为什么hadoop计数器中的map输出记录和reduce输入记录是不同的?

pexxcrt2  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(364)

我在hadoop中运行了一个单词计数作业,我的问题是为什么hadoop计数器中的Map输出记录和减少输入记录是不同的?请看下图

0s7z1bwu

0s7z1bwu1#

我找到了在代码中使用组合器类的原因

l7mqbcuq

l7mqbcuq2#

根据“combine output records”计数器,您的作业似乎使用了组合器。这就解释了为什么“减少输入记录”不等于“Map出记录”。
合路器已经相当有效地将100米的记录缩减到几百条。
很可能,您会问为什么“合并输入记录”不等于“Map输出记录”,为什么“合并输出记录”不等于“记录输入记录”。其解释是,组合器可以运行多次,这意味着您“实际上”对相同的数据进行了多次计数(在这里,您可以观察到541个额外的输入记录等于677-136,但不能保证这两个数字总是匹配的)

相关问题