开发者社区 问答 正文

MapReduce中的Reduce端的Shuffle分为哪些阶段?

MapReduce中的Reduce端的Shuffle分为哪些阶段?

展开
收起
游客daliwbfb2wo66 2021-12-04 21:37:00 497 分享 版权
1 条回答
写回答
取消 提交回答
  • 1.Copy阶段:Reduce进程启动一些数据copy线程,通过HTTP方式请求MapTask所在的TaskTracker以获取输出文件。

    2.Merge阶段:将Map端复制过来的数据先放入内存缓冲区中,Merge有3种形式,分别是内存到内存,内存到磁盘,磁盘到磁盘。默认情况下第一种形式不启用,第二种Merge方式一直在运行(spill阶段)直到结束,然后启用第三种磁盘到磁盘的Merge方式生成最终的文件。

    3.Reduce阶段:最终文件可能存在于磁盘,也可能存在于内存中,但是默认情况下是位于磁盘中的。当Reduce的输入文件已定,整个Shuffle就结束了,然后就是Reduce执行,把结果放到HDFS中。

    2021-12-04 21:37:14
    赞同 展开评论