大数据是收集、整理、处理大规模数据集,并从中获得见解所需的非传统思维和技术的总称。大数据时代不仅需要解决大规模、多样化数据的高效存储问题,同时还需要解决大规模、多样化数据的高效处理问题。
分布式并行程序是一种常用的可以大幅度提高程序性能,实现高效的数据处理的编程模式。通过运行在由大规模的通用计算机组成的集群上,分布式程序可以并行地进行大规模数据处理,从而提高数据处理的效率。
MapReduce是由Google提出的一种并行编程模式,适合于进行大规模数据集的并行运算。它提供了一个统一的并行计算框架,把并行计算所涉及的诸多系统层细节都交给计算框架去完成,以此大大简化了程序员进行并行化程序设计的负担。MapReduce的简单易用性使其成为目前大数据处理技术中最成功的主流并行计算模式。开源的Hadoop系统实现了MapReduce计算模式,目前已成为成熟的大数据处理平台。