我们正在努力从 map reduce 作业中收集统计数据。我们将对某些事情使用计数器,但我想知道是否有某种方法可以访问 Web UI 上的统计信息,例如插入的行、读/写的字节数等,以便我们可以将它们推送到数据库中供以后检查。
Web UI 如何收集所有这些数据,我们能否以一种不涉及解析下载的 html 报告 View 的方式使用这些收集的数据?比如作业输出的文件?
最佳答案
这是 tutorial用于访问工作计数器。这是获取给定 jobid 的计数器的代码。
JobId jobId = new JobId("12345", 0);
Cluster cluster = new Cluster(new Configuration());Job job = cluster.getJob(jobId);
Counters counters = job.getCounters();Counter counter = counters.findCounter(JobCounter.NUM_FAILED_REDUCES);
long failedTasks = counter.getValue();
检索到计数器后,将它们放入数据库中并在 UI 中显示。
除了用户定义的计数器 JobCounter和 TaskCounter是一些 Hadoop 定义的计数器。
关于hadoop - 访问 MapReduce 配置/统计信息以进行日志记录和分析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8792997/