Map-Reduce Framework参数说明
Combine input records:
Combiner是为了减少尽量减少需要拉取和移动的数据,所以combine输入条数与map的输出条数是一致的。
Combine output records
经过Combiner后,相同key的数据经过压缩,在map端自己解决了很多重复数据,表示最终在map端中间文件中的所有条目数
Failed Shuffles
copy线程在抓取map端中间数据时,如果因为网络连接异常或是IO异常,所引起的shuffle错误次数
GC time elapsed(ms)
通过JMX获取到执行map与reduce的子JVM总共的GC时间消耗
Map input records
所有map task从HDFS读取的文件总行数
Map output records
map task的直接输出record是多少,就是在map方法中调用context.write的次数,也就是未经过Combine时的原生输出条数
Map output bytes
Map的输出结果key/value都会被序列化到内存缓冲区中,所以这里的bytes指序列化后的最终字节之和
Merged Map outputs
记录着shuffle过程中总共经历了多少次merge动作
Reduce input groups
Reduce总共读取了多少个这样的groups
Reduce input records
如果有Combiner的话,那么这里的数值就等于map端Combiner运算后的最后条数,如果没有,那么就应该等于map的输出条数
Reduce output records
所有reduce执行后输出的总条目数
Reduce shuffle bytes
Reduce端的copy线程总共从map端抓取了多少的中间数据,表示各个map task最终的中间文件总和
Shuffled Maps
每个reduce几乎都得从所有map端拉取数据,每个copy线程拉取成功一个map的数据,那么增1,所以它的总数基本等于 reduce number * map number
Spilled Records
spill过程在map和reduce端都会发生,这里统计在总共从内存往磁盘中spill了多少条数据
SPLIT_RAW_BYTES
与map task 的split相关的数据都会保存于HDFS中,而在保存时元数据也相应地存储着数据是以怎样的压缩方式放入的,它的具体类型是什么,这些额外的数据是MapReduce框架加入的,与job无关,这里记录的大小就是表示额外信息的字节大小