假设我在Hadoop MapReduce中使用了cleanup()函数。如何在其中添加进度跟踪机制,让我们说完成百分比,在控制台中显示它?
答案 0 :(得分:1)
Mapper.java类的cleanup()没有实现。
从命令提示符运行Hadoop作业时,控制台上会打印以下内容。
11/10/31 18:15:50 INFO mapreduce.Job:地图0%减少0%
11/10/31 18:16:15 INFO mapreduce.Job:地图50%减少0%
11/10/31 18:16:21 INFO mapreduce.Job:地图100%减少0%
11/10/31 18:16:30 INFO mapreduce.Job:地图100%减少100%
上述代码位于Job.java类。
String report =
(" map " + StringUtils.formatPercent(mapProgress(), 0)+
" reduce " +
StringUtils.formatPercent(reduceProgress(), 0));
if (!report.equals(lastReport)) {
LOG.info(report);
lastReport = report;
}
必须修改Mapper.cleanup()代码以将进度打印到控制台和构建的jar文件。我不认为在Hadoop中有清理OOB支持。