什么是Hadoop阻止我们设置Mappers的数量?

时间:2014-09-16 22:34:02

标签: hadoop mapreduce

根据我的理解,即使我们可以设置减速器的数量,我们也无法在MR作业中设置映射器的数量。 \ ref {how to limit the number of mappers}

作为一个概念,我不明白为什么我们不能有预定数量的映射器和文本文件的大块给它们。

1 个答案:

答案 0 :(得分:0)

为了最佳地平衡性能和工作负载分配,框架根据输入拆分数确定映射器的数量。

Apache hadoop wiki链接http://wiki.apache.org/hadoop/HowManyMapsAndReduces详细介绍 -

  

实际控制地图的数量是微妙的。 mapred.map.tasks参数只是一个提示>输入格式的地图数量。默认的InputFormat行为是将总数>字节拆分为正确数量的片段。但是,在默认情况下,>输入文件的DFS块大小被视为输入拆分的上限。可以通过mapred.min.split.size设置分割大小的下限。因此,如果您期望10TB的输入数据并具有128MB DFS块,那么除非您的mapred.map.tasks更大,否则您将>最终得到82k映射。最终,InputFormat>确定地图的数量。