版权声明:有一种生活不去经历不知其中艰辛,有一种艰辛不去体会,不会知道其中快乐,有一种快乐,没有拥有不知其中纯粹 https://blog.csdn.net/wwwzydcom/article/details/83834671
MapReduce确保每个reducer的输入都是按键排序,系统执行排序的过程(将map的输入作为输出传给reducer)
-
map方法 写入<key,value>数据进入缓冲区
2.溢写
分区
排序
combiner为可选的流程
如果设置了,就会进行合并多次溢写的操作
spill.index:溢写文件的大小,位置信息
spill.out:溢写文件
…
多次溢写
再一次combiner为可选的流程,设置了
如果设置了对数据进行了压缩,也是优化的手段
协调了网络传输
3.写入磁盘.等待reduceTask 进行操作
4.Map方法拷贝数据
分别拷贝各自管理的分区,如果内存不够,溢写到磁盘中
优化提高内存缓冲
5. 归并排序并分组
6.