我已经认识到程序的关键,我可以使用 javabean 之类的数据结构来存储 2 种类型。
示例:
类 JavaBean {private String s;
private int count;
}
我可以在我的 Hadoop Map-Reduce 程序中使用上述 JavaBean 作为值吗?
您能建议我可以使用哪些其他数据结构吗?
最佳答案
是的,您可以使用 JavaBean 作为值。就像你有 POJO 类:
Class JavaBean{
private String s;
private int count;
private String s;
private int count;
public String getS() {
return s;
}
public void setS(String s) {
this.s = s;
}
public int getCount() {
return count;
}
public void setCount(int count) {
this.count = count;
}
public String toString(){
return getS()+","+getCount();
}
在您的 Mapper 代码中,首先调用 JavaBean 类的 setter 方法并将值作为 JavaBean 的 toString() 方法发出,例如:
JavaBean jb = new JavaBean();
jb.setS("abc");
jb.setCount(1);
context.write(key,jb.toString());
关于hadoop - 在 Mapreduce 程序中,我们可以使用数据结构作为值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35098424/