我需要从 HDFS 读取数百万条记录,丰富它们并将它们作为 XML 文件存储在每个 XML 文件的 10K 条记录中。
我一直在尝试使用 Accumulator 接口并将我的 pig.accumulative.batchsize 设置为 2 进行测试。
但是,被调用的方法是“exec()”而不是 Accumulator 的“accumulate”方法。
我的UDF课程大纲如下:
public class MyAccUDF extends EvalFunc <Tuple> implements Accumulator <Tuple>{
public Tuple exec(Tuple input) throws IOException {
//..
}
public void accumulate(Tuple b) throws IOException {
//...
}
public void cleanup() {
//..
}
public Tuple getValue() {
//..
}
}