Mapreduce之Combiner

原理:性能

1.是什么?mapreduce做业的优化优化

在map端进行一次相似于reduce的操做,这种操做称为Combiner继承

2.为何会有这种优化方式?原理

为了减小map->reduce 传输的数据量。 map

3.既然Combiner相似于reduce,那么它的输入数据类型和输出数据类型是什么?数据类型

Combiner处理map的结果,combiner处理的结果是reduce的输入。数据

那么它的输入数据类型就等于map端的输出数据类型,它的输出数据类型就等于reduce端的输入数据类型。co

4.它是怎么实现的呢?

Combiner就是一个reduce

Combiner实现就要继承一个reducer

job.setCombinerClass(reducer类);

 

 

限制条件

1.不能影响map阶段的数据传送

2.它的存在与否只是影响性能

3.它的输入数据类型和输出数据类型一致

相关文章
相关标签/搜索