hadoop:0 reducer和identity reducer之间的区别?

kee*_*kee 25 hadoop mapreduce

我只是想确认我对减速器和减速器之间的差异的理解.

  • 0 reducer意味着将跳过reduce步骤并且mapper输出将是最终输出
  • 身份减少器意味着洗牌/分拣仍然会发生?

Dav*_*man 39

你的理解是正确的.我将其定义如下:如果您不需要对地图结果进行排序 - 您将0设置为减少,并且该作业仅称为地图.
如果需要对映射结果进行排序,但不需要任何聚合 - 则选择identity reducer.
为了完成图片,我们有第三种情况:我们确实需要聚合,在这种情况下我们需要减速器.


Dol*_*cci 5

使用Identity Reducer的另一个用例是将所有结果合并到<reduce of reducers>输出文件中.如果您使用Amazon Web Services直接写入S3,这可能很方便,特别是如果映射器输出很小(例如grep /搜索记录),并且您有很多映射器(例如1000).