版权声明:个人原创,转载请标注! https://blog.csdn.net/Z_Date/article/details/83861293
目录
1、由wordcount案例执行开始分步演示mapreduce运行逻辑(较粗,但对初学者理解mr有帮助)
4、MRAppmaster控制map与reduce运行的工作流程
1 概述
mapreduce中,map阶段处理的数据如何传递给reduce阶段,是mapreduce框架中最关键的一个流程,这个流程就叫shuffle;shuffle:洗牌、发牌——(核心机制:数据分区,排序,缓存);具体来说:就是将maptask输出的处理结果数据,分发给reducetask,并在分发的过程中,对数据按key进行了分区和排序;
2 主要流程
shuffle是MR处理流程中的一个过程,它的每一个处理步骤是分散在各个map task和reduce task节点上完成的,整体来看,分为3个操作:
-
分区partition 属于map Task阶段
-
Sort根据key排序 属于reduce Task阶段
-
Combiner进行局部value的合并