inputFormat:在hdfs中读取要进行计算的数据,输出给split
split:对数据进行逻辑切分,输出给RR(record rider)
RR:将数据转换成key,value 的list的形式,输出给map
map:接收一条条数据,根据业务需求编写代码,输出给shuffle阶段的partition (有多少行数据map就运行多少次,输出的次数根据业务需求而定)
partition(分区):对map输出的key,value 的list进行分区,输出给shuffle阶段的sort
sort(排序):对各个分区后的数据进行排序,输出给shuffle阶段的combiner
combiner(优化):在map端进行数据的局部聚合,输出给shuffle阶段的group (作用:减少网络带宽的开销)
group(合并):将相同key的key作为唯一的key
将相同key对应的value提取出来组装成一个value的list
输出给reduce
reduce:根据业务需求对传入的数据进行汇总计算,输出给outputFormat
outputformat:将最终的结果写入到HDFS
大数据-mapreduce-MR从读取数据开始到将最终结果写入HDFS经过哪些步骤-小记+图解
最新推荐文章于 2023-01-04 23:56:48 发布