Pig Accumulator,输入元组保证订购?

时间:2014-10-22 00:24:36

标签: mapreduce apache-pig

我编写了一个实现Accumulator接口的UDF。但是,为了使我的UDF能够工作,需要对传入的关系进行排序。我正在以次要的方式管理它:

out = FOREACH (GROUP test BY key) {
    sorted = ORDER test BY sub_key;
    GENERATE MyUDF(sorted);
}

根据Accumulator文档,我的UDF期待一系列增量包。我的UDF接收元组的总顺序是否保持不变?即是内部订购的每个增量袋,是我看到增量袋订购的顺序吗?

当我测试时,似乎所有东西都被订购了,但我想确定,因为猪的文档描述袋子是“无序的”。

1 个答案:

答案 0 :(得分:0)

由于您已使用ORDER运算符对包内的元组进行排序,因此您的UDF将在“排序”中接收元组。袋子肯定订购了。