【问题标题】:Projecting Grouped Tuples in Pig在 Pig 中投影分组元组
【发布时间】:2012-05-29 23:39:49
【问题描述】:

我有一个 (t,a,b) 形式的元组集合,我想在 Pig 中按 b 分组。分组后,我想从每组的元组中过滤掉 b 并为每组生成一袋过滤后的元组。

例如,假设我们有 (1,2,1) (2,0,1) (3,4,2) (4,1,2) (5,2,3)

猪脚本会产生 {(1,2),(2,0)} {(3,4),(4,1)} {(5,2)}

问题是:我如何才能产生这个结果?我习惯于看到聚合操作遵循分组操作的示例。我不太清楚如何过滤元组并将它们放入袋子中。感谢您的帮助!

【问题讨论】:

    标签: apache-pig


    【解决方案1】:

    原来我正在寻找的是 Pig 中嵌套投影的语法。

    如果一个人有 (t,a,b) 形式的元组,并且想在 group by 之后删除 b,则这样做。

    grouped = GROUP tups BY b;
    result = FOREACH grouped GENERATE tup.(t,a);
    

    请参阅 PigLatin 页面上的“嵌套投影”部分。 http://wiki.apache.org/pig/PigLatin

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-22
      • 2018-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多