我在包含多个AWS实例的集群上运行Hadoop MapReduce Java应用程序。我想知道是否可以知道随机播放阶段数据集的大小,即总共有多少数据被混洗。另外,是否可以知道每个reducer任务处理了多少数据?
答案 0 :(得分:3)
您应该可以从JobTracker Web UI中找到此信息。
有一个名为“Reduce shuffle bytes”的计数器,详细说明了被洗牌的总字节数 - 请参阅https://issues.apache.org/jira/browse/HADOOP-4845和原始链接的票据以获取更多信息。
对于每个减速器计数,深入查看已完成的减速器任务并单独检查此计数器以执行任务
答案 1 :(得分:0)
您可以转到AWS EMR作业屏幕并选择作业,然后单击“调试”按钮。在那里,您可以查看您的syslog文件。它包含有关Map和Reduce任务的所有信息。所有计数器的值如“Reduce shuffle bytes”,“Map output records”等都被转储。您还可以在syslog中查看执行程序所需的确切时间以及Map任务失败的数量。
希望这会有所帮助。我建议你在AWS上创建作业时,设置Debug选项,这样你就可以看到这个文件,如果你还没有这样做的话。