0
在hadoop Map-Reduce框架中,當應用程序運行時,是否有可能知道程序中運行的工作人員數量。工作人員數量與文件拆分數量相同,換句話說,是否可以動態知道文件拆分數量?Mapper可以知道有多少Mapper在運行嗎?
在hadoop Map-Reduce框架中,當應用程序運行時,是否有可能知道程序中運行的工作人員數量。工作人員數量與文件拆分數量相同,換句話說,是否可以動態知道文件拆分數量?Mapper可以知道有多少Mapper在運行嗎?
構成作業的地圖任務和縮減器任務的總數可以通過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
將這一計劃給映射器和減速器在程序運行的數量?我們將在哪裏編寫這個程序? – Kumar 2014-04-02 09:47:11