shuffle

混洗
shuffle 输入时key value的 list
shuffle 输出是key value的list

MapReduce计算任务的步骤
第一步:InputFormat
InputFormat到hdfs上读取数据
将数据传给Split
第二步:Split
Split将数据金进行逻辑切分
将数据传给RR
第三步:RR
RR:将传入的数据转换成一行一行的数据,输出行首字母偏移量对应的数据
将数据传给MAP
第四步:MAP
MAP:根据业务需求实现自定义代码
将数据传给Shuffle的partition
第五步:partition
partition:按照一定的分区规则,将key value的list进行分区
将数据传给Shuffle的Sort
第六步:Sort
Sort:对分区内的数据进排序
将数据传给Shuffle的combiner
第七步:combiner
combiner:对数据进行局部聚合
将数据传给Shuffle的Group
第八步:Group
Group:将相同key的key提取出来作为唯一的key
将相同key对应的value获取出来作为value的list
将数据传给Redduce
第九步:Reduce
Reduce:根据业务需求进行最终的合并汇合
将数据传给outputFormat
第十步:outputFormat
outputFormat:将数据写入HDFS

你可能感兴趣的:(MapReduce)