"合并" Pig Latin

时间:2015-05-20 08:36:35

标签: join merge apache-pig bag

有没有办法合并"猪的两个相同大小的袋子?

例如:我有两个这样的包 -

({(0.05,0.0),(0.05,0.0)}, {a, b}) 

我想要的只是:

(0.05,0.0,a), (0.05,0.0,b) 

(无论是袋装还是元组都没关系。)

这似乎是直接采用UDF的方式。是否有使用Pig运算符或DataFu UDF的简单解决方案?

1 个答案:

答案 0 :(得分:0)

如果订单无关紧要,您可以使用this SO post执行此操作。在Python中:

@outputSchema('combined:{(f1, f2, f3)}')
def combine_equal_bags(bag1, bag2):
    out = []
    for b1, b2 in zip(bag1, bag2):
        out.append(b1 + (b2,))
    return out

仅使用纯猪是不可能的。