0

在 Hadoop 中,mapper 和 reducer 类应该扩展 Mapper 或 Reducer 接口。但是,我找不到组合器类应该扩展的接口。Hadoop 中组合器类的签名是什么?

4

2 回答 2

0

组合器扩展了Reducer接口,它的签名应该发出与其使用相同的键/值类型,例如字数组合器具有以下签名(对于o.a.h.mapreduce新旧o.a.h.mapred包):

public class MyCombinerNewApi 
    extends Reducer<Text, IntWritable, Text, IntWritable> {

}

public class MyCombinerOldApi 
    implements Reducer<Text, IntWritable, Text, IntWritable> {

}

有时,Combiner 类与 Reducer 类相同(如 Word Count 示例中所示)是很常见的。

一些很好的链接更详细地解释了组合器:

于 2013-01-05T03:45:23.667 回答
0

组合器是迷你减速器。它们遵循 Reducer 本身的相同签名

public class Combiner extends Reducer<Text, IntWritable, Text, IntWritable> {
于 2014-10-01T09:11:04.927 回答