Hadoop Map-Reduce フレームワークでは、アプリケーションの実行中に、プログラムで実行されているワーカーの数を知ることができますか? ワーカー数はファイル分割数と同じなので、つまりファイル分割数を動的に知ることは可能ですか?
質問する
198 次
1 に答える
1
ジョブを構成する map タスクと reducer タスクの総数は、mapred.map.tasks
およびmared.reduce.tasks
構成プロパティを介して照会できます (ジョブが送信された後)。
ソースを見ると、これが設定されていることがわかりますorg.apache.hadoop.mapred.JobClient:784
(そして、同じ分割数です)。
// Create the splits for the job
LOG.debug("Creating splits at " + fs.makeQualified(submitSplitFile));
int maps;
if (job.getUseNewMapper()) {
maps = writeNewSplits(context, submitSplitFile);
} else {
maps = writeOldSplits(job, submitSplitFile);
}
job.set("mapred.job.split.file", submitSplitFile.toString());
job.setNumMapTasks(maps); // here is where mapred.map.tasks is set
于 2012-04-27T10:30:18.693 に答える