MapReduce的优化(MapShuffle的2个阶段、3个功能、2大优化)

MapReduce的shuffle
2个阶段:

map端(phase)的shuffle
reduce端(phase)的shuffle

3个功能:

分区
– 决定mapTask的输出的数据 给 那个 reduce task处理
排序
– 至少经过3次排序
分组
– 将相同key的value放入一个集合中

2大优化
map phase shuffle

合并combiner
在map端 进行了一次reduce聚合操作
并不是所有的MapReduce程序都可以设置combiner操作,
测试,一般符合结合律
压缩compress
压缩map输出 的 结果数据,减少网络IO和磁盘IO流

常见的压缩算法:Snappy、Lz4,Lzo

你可能感兴趣的:(大数据)