【发布时间】:2015-10-22 19:00:01
【问题描述】:
我正在使用 Oozie 触发流式 MapReduce 作业,我想为此收集以下 Hadoop EL 常量:
MAP_IN:Hadoop 映射器输入记录计数器名称。
MAP_OUT:Hadoop 映射器输出记录计数器名称。
REDUCE_IN:Hadoop reducer 输入记录计数器名称。
REDUCE_OUT:Hadoop reducer 输入记录计数器名称。
我看到这些可以使用
${ hadoop:counters('mr-action')[RECORDS][REDUCE_OUT]}
但是,我不知道如何将这些值通过 STDOUT 输出回屏幕,或者输出到我启动 Oozie 工作流程的服务器上 HDFS 中的文件。
我尝试将这些值传递给 shell 操作,然后回显/附加到文件,但我相信这是在数据节点上处理的,所以我看不到该输出。正如一个线程所建议的那样,我还尝试将 oozie.action.external.stats.write 设置为 true,然后调用
oozie job -info -verbose
但我仍然没有看到这些计数器显示在外部统计字段下。有关如何获得这些计数器输出的任何建议都会非常有帮助。
【问题讨论】:
标签: hadoop oozie hadoop-streaming