我使用hadoop在我们的集群上运行map-reduce应用程序。这些工作每天大约需要10个小时才能完成。我想知道每个工作所花费的时间,以及最长工作所花费的时间等等。因此,我可以优化这些工作。是否有任何插件或脚本可以执行此操作?
谢谢你 巴拉
答案 0 :(得分:4)
查看http://:50030或http://:50030 / jobhistory.jsp(位于底部。
每个作业/任务/任务部分(地图,排序,减少)都有分析。非常方便。你可以编写自己的日志 - 我只是“忘记”所有的分析页面,并通过awk将它们放到原始统计数据中。
答案 1 :(得分:1)
首先,您是否一直在查看Hadoop附带的job tracker UI来跟踪作业的进度。您应该检查每个作业生成的所有标准计数器统计信息以及您添加到作业的任何自定义计数器。
一个有趣的选择可能是看看Cloudera Desktop。
我还发现Cloudera的这篇文章很有用:7 tips for improving MapReduce performance
出于兴趣,您是否正在优化您的工作,因为他们花了太长时间?
答案 2 :(得分:0)
上面引用的3个网页非常有用:
本地主机:50030 / jobtracker.jsp 本地主机:50060 / tasktracker.jsp 本地主机:50070 / dfshealth.jsp
还有一个hyperich-hq插件,用于衡量作业跟踪器和任务跟踪器的性能。 hyperic hq plugin
答案 3 :(得分:0)
我编写了一个名为Hadoop Job Analyzer的开源非侵入式工具,它通过根据用户指定的视图聚合数据并将其发送到度量标准后端进行进一步分析来提供此功能。
Harel的