为什么组合输入的记录数比地图的输出的数量多吗?(Why is the number of combi

2019-09-21 20:21发布

组合器映射器后运行和减速之前,将作为输入接收由所述映射器实例给定节点上发射的所有数据。 然后,它发出输出到减速。 组合输入比应地图。OUPUTS少所以记录。

12/08/29 13:38:49 INFO mapred.JobClient:   Map-Reduce Framework

12/08/29 13:38:49 INFO mapred.JobClient:     Reduce input groups=8649

12/08/29 13:38:49 INFO mapred.JobClient:     Map output materialized bytes=306210

12/08/29 13:38:49 INFO mapred.JobClient:     Combine output records=859412

12/08/29 13:38:49 INFO mapred.JobClient:     Map input records=457272

12/08/29 13:38:49 INFO mapred.JobClient:     Reduce shuffle bytes=0

12/08/29 13:38:49 INFO mapred.JobClient:     Reduce output records=8649

12/08/29 13:38:49 INFO mapred.JobClient:     Spilled Records=1632334

12/08/29 13:38:49 INFO mapred.JobClient:     Map output bytes=331837344

12/08/29 13:38:49 INFO mapred.JobClient:     **Combine input records=26154506**

12/08/29 13:38:49 INFO mapred.JobClient:     **Map output records=25312392**

12/08/29 13:38:49 INFO mapred.JobClient:     SPLIT_RAW_BYTES=218

12/08/29 13:38:49 INFO mapred.JobClient:     Reduce input records=17298

Answer 1:

我想这是因为该组合还可以在以前的合并步骤的输出运行,因为您的合运行,并产生新的记录,随后与其他记录出来的映射器结合。 它也可能是地图的输出记录在合运行后计算,这意味着有更少的记录,因为有些已合并。



文章来源: Why is the number of combiner input records more than the number of outputs of maps?