Hadoop猪技术按功能分组

Posted

技术标签:

【中文标题】Hadoop猪技术按功能分组【英文标题】:Hadoop pig technology group by function 【发布时间】:2017-02-23 05:31:26 【问题描述】:

我有一个关系 A 包含

(zip-code).

我有另一个关系 B 包含

(name:gender:zip-code)

(x:m:1234)

(y:f:1234)

(z:m:1245)

(s:f:1235).

我想将关系 B 中的数据按 A 分组

C = GROUP B BY A::zipcode;

预期输出:

(1234,(y,f,1234),(x,m,1234))

(1235,(s,f,1235))

(1245,(z,m,1245))

【问题讨论】:

Read How to ask on *** 在发布查询之前 您还应该提供预期的输出。 我看不到关系 A 的必要性,您能否提供 A 和 B 的示例输入并让我们知道您的目标 【参考方案1】:

我没有看到关系 A 的需要。如果目标是按关系 B 中已经存在的邮政编码字段进行分组,那么下面的代码就足够了。

C = GROUP B BY zip_code;

DUMP C; -- Will have the expected output.

【讨论】:

谢谢,但我不想直接使用 zip_code,我希望使用任何具有 zip_code 的变量或关系来输出 我这里的目标不清楚,你能分享示例输入和预期输出吗? 请帮帮我....如何编写猪脚本以按关系中具有 3 个不同值的字段对数据进行分组

以上是关于Hadoop猪技术按功能分组的主要内容,如果未能解决你的问题,请参考以下文章

Hadoop Hive 按类别分组

MapReduce自定义分组Group

按字段分组的Reducer

hadoop map reduce中分组比较器有啥用

猪 - 获得前 n 名并在“其他”中分组休息

猪查询给出错误(位置参数分组)