为什么数据本地化不适用于Map Reduce过程中的排序和随机播放阶段?

时间:2016-06-25 15:54:24

标签: hadoop mapreduce hadoop2

我发现datalocalization仅适用于mapper阶段,这意味着它会将mapper的输出保持在temp [在本地文件系统中的mapred-site.xml中配置]文件夹中处理网络故障。

但是这个进程[datalocalization]不适用于reducer phase意味着reducer的输出没有保存在本地文件系统[LFS]中,为什么不需要将reducer输出存储到LFS?

1 个答案:

答案 0 :(得分:0)

$("#a-#{@answer.id}-accept-answer i.accepted-answer-checkbox.fa").click (el) -> $.each ['fa-check-square', 'voted', 'fa-check-square-o'], (_, val) -> $(el).find('i.accepted-answer-checkbox.fa').toggleClass val 的映射器阶段,输出MapReduce将存储在本地文件系统中,以避免任何与网络相关的问题,这被称为[part-m-xxxx]

但是reducer输出没有存储在本地文件系统中,因为:

  1. 即使在reducer阶段出现问题,它也会获得数据 使用datalocalization来自工作人员/数据节点。
  2. 如果reducer阶段RPC成功,那么它是最终输出, 所以将最终输出存储在中也是没有意义的 本地文件系统并浪费磁盘存储。