在hadoop作业计数器中,“Map output materialized bytes”与“map output bytes”之间有什么区别?当我禁用地图输出压缩时,我没有看到前者,所以我猜它是真正的输出字节(压缩),而后者是未压缩的字节?
答案 0 :(得分:10)
我认为你是对的。 来自http://hadoop.apache.org/docs/r1.0.4/releasenotes.html:
MapReduce的2365。 FileInputFormat(BYTES_READ)和FileOutputFormat(BYTES_WRITTEN)的新计数器。压缩MapOutputSize的新计数器MAP_OUTPUT_MATERIALIZED_BYTES。 (Siddharth Seth)
(自Hadoop 0.20.2以来的变化)
............................................... .................................................. ..................................................
以下是汤姆怀特的“Hadoop权威指南”第3版(表8-2,第261页)的引用:
“映射输出物化字节” - 实际写入磁盘的映射输出的字节数。如果启用了地图输出压缩,则会反映在计数器值中。
“映射输出字节” - 作业中所有映射生成的未压缩输出的字节数。每次在地图collect()
上调用OutputCollector
方法时都会增加。