在Apache Hadoop map-reduce程序中,使用集合/列表作为映射器输出中的键有哪些选项?
我最初的想法是使用ArrayWritable
作为键类型,但这是不允许的,因为该类没有实现WritableComparable
。我是否需要定义一个自定义类,或者在Hadoop库中是否有其他类似的类可以作为键?
答案 0 :(得分:1)
我认为ArrayWritable实现了Writable,这是WritableComparable的超级接口。
你是否是ArrayWritable的子类?根据文档,您需要对其进行子类化,以便您可以设置要由数组存储的对象类型。例如:
public class TextArrayWritable extends ArrayWritable {
public TextArrayWritable() {
super(Text.class);
}
}