猪的动态元组?

时间:2013-10-25 11:17:46

标签: hadoop apache-pig

我用猪中的元组获得数据

   0,(0),(zero)
   1,(1,2),(first,second)

我可以收到吗?

   0,0,zero
   1,1,first
   1,2,second

1 个答案:

答案 0 :(得分:0)

首先,我要更正您的术语,您应该将(0)(1,2)视为行李,而不是元组。元组旨在成为代表某种实体的固定长度数据结构。比如说(name, address, year of birth)。如果你有一个类似对象的列表,比如{(apple), (orange), (banana)},你需要一个包。


不存在允许您“压缩”多个行李/列表的行为。原因是从设计的角度来看,Pig将行李视为无序列表,因此术语“行李”不是“列表”。这个假设确实有助于并行性,因为您不必考虑订单。因此,很难将1first匹配。


您可以尝试做的是写一个eval function UDF,其中包含两个包作为参数,然后拉上两个列表,然后返回一个带拉链的袋子。