为什么要同时映射和减少运行



我是Hadoop的新手。我记得我从某处了解到,在Hadoop中,所有映射函数都必须在reduce函数开始之前完成。

但是当我运行这样的地图缩减程序时,我刚刚得到了打印输出:

map(15%), reduce(5%)
map(20%), reduce(7%)
map(30%), reduce(10%)
map(38%), reduce(17%)
map(40%), reduce(25%)

为什么它们并行运行?

在实际的Reduce阶段开始之前,随着映射器不断完成,随机播放排序合并发生。这个百分比表明了这一点。这不是实际的减少阶段。这是并行发生的,以减少如果框架继续等待所有映射器完成,然后进行洗牌、排序和合并,则会产生开销。

相关内容

  • 没有找到相关文章

最新更新