gpt4 book ai didi

join - 在 Pig Latin 的几个字段上过滤和分组元组

转载 作者:可可西里 更新时间:2023-11-01 16:14:07 26 4
gpt4 key购买 nike

我对在工作中使用 Pig 还比较陌生。我有一个巨大的表(367 万个条目),其中包含字段 -- id、feat1:value、feat2:value ... featN:value。其中 id 是文本,feat_i 是特征名称,value 是给定 id 的特征i 的值.每个元组的特征数量可能会有所不同,因为它是稀疏表示。

例如这是数据中 3 行的示例

  1. id1 f1:23 f3:45 f7:67
  2. id2 f2:12 f3:23 f5:21
  3. id3 f7:30 f16:8 f23:1

现在的任务是对具有共同特征的查询进行分组。我应该能够获得那些具有任何功能重叠的查询集。我尝试了几件事。 CROSS 和 JOINS 造成数据爆炸,reducer 卡住了。我不熟悉条件 GROUP BY 命令。

有没有办法在 GROUP BY 中编写一个条件,使其只选择那些具有共同特征的查询。
对于上面的行,结果将是:

  1. id1, id2
  2. id1, id3

谢谢

最佳答案

我想不出在 pig 中执行此操作的优雅方法。不可能根据某些条件对 b 进行分组。

但是,您可以将所有关系分组并将其传递给 UDF,该 UDF 将每条记录与其他所有记录进行比较。可扩展性不是很好,需要一个 UDF,但它可以完成这项工作。

关于join - 在 Pig Latin 的几个字段上过滤和分组元组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25664223/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com