hadoopmapreduce:在shuffle和reduce阶段处理的数据大小

rm5edbpk  于 2021-06-03  发布在  Hadoop
关注(0)|答案(2)|浏览(367)

我正在包含几个aws示例的集群上运行hadoopmapreducejava应用程序。我想知道是否有可能知道在shuffle阶段数据集的大小,即总共有多少数据被shuffle。另外,是否有可能知道每个reducer任务处理了多少数据?

j2qf4p5b

j2qf4p5b1#

您应该能够从jobtracker web ui中找到此信息。
有一个名为“reduce shuffle bytes”的计数器,详细说明了被洗牌的总字节数-请参阅https://issues.apache.org/jira/browse/hadoop-4845 以及原始的链接票以获取更多信息。
对于每个reducer计数,向下钻取到已完成的reducer任务,并针对该任务单独检查此计数器

ncgqoxb0

ncgqoxb02#

您可以转到aws emr作业屏幕,选择作业,然后单击“调试”按钮。在那里你可以查看你的系统日志文件。它拥有Map和reduce任务的所有信息。所有计数器的值如“reduce shuffle bytes”、“map output records”等都被转储。您还可以在syslog中查看程序执行所用的确切时间和失败的map任务数。
希望这有帮助。我建议您在aws上创建作业时,启用debug选项,以便您可以看到这个文件(如果您还没有这样做的话)。

相关问题