我有一个map / reduce作业,我想跟踪在作业的地图阶段处理的记录数。为此,我在地图阶段使用自定义计数器,并将它们递增1。此外,我每隔30秒就会监控这些计数器。
但是,当我使用Job Client检查作业计数器进度时,我看到处理的记录数量甚至不是每个周期性间隔。有时候,没有变化,有时会有变化。
context.getCounter(ApplicationCounters.TOTAL_NUMRECORDS_PROCESSEDBY_MAP)
.increment(1);
我的hadoop群集心跳间隔是15秒。这不意味着,我应该定期更新。
答案 0 :(得分:0)
确保您的作业已完成,建议使用waitForCompletion。在运行期间查询计数器可能会以奇怪的结果结束。
计数器由框架结尾全局汇总 这份工作。