《MapReduce 2.0源码分析与编程实战》一1.4 MapReduce与Hadoop
本节书摘来异步社区《MapReduce 2.0源码分析与编程实战》一书中的第1章,第1.4节,作者: 王晓华 责编: 陈冀康,更多章节内容可以访问云栖社区“异步社区”公众号查看。 1.4 MapReduce与Hadoop 如果将Hadoop比作一头大象的话,那么MapReduce就是那头大象的大脑。MapReduce是Hadoop核心编程模型。在Hadoop中,数据处理核心为MapReduce程序设计模型。MapReduce把数据处理和分析分成两个主要阶段,即Map阶段和Reduce阶段。Map阶段主要是对输入进行整合,通过定义的输入格式获取文件信息和类型,并且确定读取方式,最终将读取的内容以键值对的形式保存。而Reduce是用来对结果进行后续处理,通过对Map获取内容中的值进行二次处理和归并排序从而计算出最终结果。MapReduce的处理过程,如图1-1所示。 在MapReduce处理过程中,首先对数据进行分块处理,之后将数据信息交给Map任务去进行读取,对数据进行分类后写入,根据不同的键产生相应的键值对数据。之后进入Reduce阶段,而Reduce的任务是执行定义的Reduce方法...