在Apache Hadoop的map-reduce程序中,使用集/列表作为映射器输出中的键的选项有哪些?
我最初的想法是使用ArrayWritable
作为键类型,但这是不允许的,因为该类未实现WritableComparable
。我是否需要定义一个自定义类,或者Hadoop库中是否有其他类似类的集合可以充当键?
最佳答案
我认为ArrayWritable实现了Writable,它是WritableComparable的 super 接口(interface)。
您是否将ArrayWritable子类化?根据文档,您需要对其进行子类化,以便可以设置数组要存储的对象的类型。例如:
public class TextArrayWritable extends ArrayWritable {
public TextArrayWritable() {
super(Text.class);
}
}
checkout ArrayWritable javadocs。
关于hadoop - 将设置/列表数据类型用于Hadoop中的中间键,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2173099/