MapReduce执行过程

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MapReduce执行过程相关的知识,希望对你有一定的参考价值。

一、基本执行过程

MapReduce过程分为两个阶段:map函数阶段和reduce函数阶段

(1)map函数是用来筛选掉非需要的数据,以键值对的形式输出,键为文件位置偏移量,值为待分析的数据,map函数核心目的是形成对数据的索引,以供reduce函数方便对数据进行分析。

(2)reduce函数以Map函数的输出数据为数据源,对数据进行相应的分析,输出结果为最终的目标数据。

二、实际应用中的分布式执行过程

(1)一个map、一个reduce

(2)多个map节点、一个reduce

(3)多个map、多个reduce

三、通过combiner函数实现执行效率优化

由于map任务的输出结果传递给reduce任务过程中,是在节点间的传输,是占用带宽的,这样带宽就制约了程序执行过程的最大吞吐量,为了减少map和reduce间的数据传输,在map后面添加了combiner函数来就map结果进行预处理,combiner函数是运行在map所在节点的。

四、实例

 

以上是关于MapReduce执行过程的主要内容,如果未能解决你的问题,请参考以下文章

MapReduce的原理及执行过程

Hadoop MapReduce执行过程详解(带hadoop例子)

MapReduce 学习6 ---- hadoop2提交到Yarn: Mapreduce执行过程分析

Hadoop中MapReduce的执行过程

mapreduce的执行过程

MapReduce程序在运行过程中所启动的Reduce任务数量由啥因素决定?