2015-11-05 60 views
2

我是Hadoop的新手,我想限制應用程序中減少作業的數量。如何限制hadoop中mapreduce java代碼中減少作業的數量

在羣集中,減少作業的最大數量是120.但是,我不想使用它們全部,因爲我的應用程序不需要那麼多的減少作業。

我嘗試了下面的解決方案,但它沒有改變任何東西。我的應用程序仍使用120個減少工作。

如何設置減少工作的數量?

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

感謝您的答覆。

回答

2

從作業類,

job.setNumReduceTasks(100); 

從shell命令

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

請在下面校驗值

隨着1.x的

mapred.reduce.tasks除非你指定job.setNumReduceTasks(x)將優先考慮;

2.x版

mapreduce.job.reduces除非你指定job.setNumReduceTasks(x)將優先考慮;

您可以使用-D參數通過Ramzy實施建議。在設置屬性之前檢查hadoop版本和相應的屬性。

查看1.x和2.x之間的已棄用屬性和新屬性versions