如何限制hadoop中mapreduce java代码中reduce作业的数量



我是Hadoop的新手,我想限制应用程序中reduce作业的数量。

在集群中,减少作业的最大数量为120个。但是,我不想全部使用它们,因为我的应用程序不需要那么多减少的工作。

我尝试了下面的解决方案,但没有改变任何东西。我的应用程序仍然使用120个reduce作业。

如何设置减少作业的数量?

https://stackoverflow.com/questions/33237361/unable-to-set-mapreduce-job-reduces-through-generic-option-parser

感谢您的回复。

来自作业类,

job.setNumReduceTasks(100);

来自shell命令

hadoop jar yourJar.jar -D mapred.reduce.tasks=1 <input> <output>

请检查以下值

带1.x

除非指定job.setNumReduceTasks(x),否则mapred.reduce.tasks将优先;

带2.x

除非指定job.setNumReduceTasks(x),否则mapreduce.job.reduces将优先;

您可以通过Ramzy使用-D参数来实现建议。在设置属性之前,请检查hadoop版本和相应的属性。

看看1.x和2.x版本之间不推荐使用的属性和新属性

相关内容

  • 没有找到相关文章

最新更新