MapReduce学习(5)

网友投稿 770 2022-05-28

MapReduce学习(5)

Reduce阶段详解

前面提到的MOF文件是经过排序处理的。当Reduce Task接收的数据量不大时,则直接存放在内存缓冲区中,随着缓冲区文件的增多,MR后台线程将它们合并成一个更大的有序文件,这个动作是Reduce阶段的Merge操作,过程中会产生许多中间文件,最后一次合并的结果直接输出到用户自定义的reduce函数。当数据很少时,不需要溢写到磁盘,直接在缓存中归并,然后输出给Reduce。通常在Map Task任务完成MOF输出进度到3%时启动Reduce,从各个Map Task获取MOF文件。前面提到Reduce Task个数由客户端决定,Reduce Task个数决定MOF文件分区数。因此Map Task输出的MOF文件都能找到相对应的Reduce Task来处理。具体流程如下图:

MapReduce

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:SpringBoot进阶(二):Redis
下一篇:【数学建模】MATLAB应用实战系列(九十八)-ARMA算法应用案例(附MATLAB代码)
相关文章