我们使用的是Hadoop 2.7.1,我发现以下两个参数均已在某些现有的MapReduce代码中设置
mapreduce.job.running.reduce.limit=500
mapred.reduce.tasks=50
后者似乎起作用,因为最终生成了50个part- *文件。
没有人知道thoes 2参数之间的区别,如果人们同时指定了这两个参数,将会发生什么?谢谢。
答案 0 :(得分:0)
摘自官方文档:
mapreduce.job.running.reduce.limit
每个作业的同时减少任务的最大数量。没有限制 如果该值为0或负数。
如果人们同时指定了两者,将会发生什么?
在您的示例中将不起作用。但是,如果将限制设置为50,将任务设置为500,则即使您的集群容量足够,hadoop也不会一次运行所有500个减速器。