Hadoop映射/减少作业进度计数器

时间:2014-04-10 09:34:11

标签: hadoop mapreduce cloudera

我有一个map / reduce作业,我想跟踪在作业的地图阶段处理的记录数。为此,我在地图阶段使用自定义计数器,并将它们递增1。此外,我每隔30秒就会监控这些计数器。

但是,当我使用Job Client检查作业计数器进度时,我看到处理的记录数量甚至不是每个周期性间隔。有时候,没有变化,有时会有变化。

context.getCounter(ApplicationCounters.TOTAL_NUMRECORDS_PROCESSEDBY_MAP)
            .increment(1);

我的hadoop群集心跳间隔是15秒。这不意味着,我应该定期更新。

1 个答案:

答案 0 :(得分:0)

确保您的作业已完成,建议使用waitForCompletion。在运行期间查询计数器可能会以奇怪的结果结束。

  

计数器由框架结尾全局汇总   这份工作。