Hadoop ジョブを実行して、map を 100 に、reduce を 1 に設定しました (実際には何も削減していません)。
conf.setNumMapTasks(100);
conf.setNumReduceTasks(1);
ジョブの実行後、hadoop ログを見ると、reduce タスクが 1 つ使用され、map タスクがゼロ (0) であることがわかります。今、私は2つの質問があります:
1) たとえ私の仕事が非常に小さくても、マップ タスクの数は少なくとも 1 つである必要はありませんか?
2) 指定した数のマップ タスクを実行するように Hadoop を強制する方法はありますか? conf.setNumMapTasks(100)
それがヒントにすぎないことはすでにわかっています。しかし、別の方法はありますか?