1

コードに次の行を含む Hadoop Map-reduce アプリケーションがあります (レデューサーの数を 1 に設定します)。

job.setNumReduceTasks(1)

このアプリケーションを複数のレデューサーで実行したいので、次の XML コードを追加してみました$HADOOP_CONF_DIR/mapred-site.xml

 <property>
  <name>mapreduce.job.reduces</name>
  <value>2</value>
 </property>

ただし、コードは引き続き 1 つのレデューサーで実行されます。Hadoop アプリケーションを強制的に 2 つのレデューサーで実行する方法はありますか?それとも、アプリケーション コードの優先度が常に高くなりますか?

4

2 に答える 2

2

この場合、 への呼び出しはjob.setNumReduceTasks(1)設定やコマンド ラインで渡されたプロパティよりも優先されるため、コードを修正する必要があります。

于 2013-12-20T12:37:08.013 に答える