gpt4 book ai didi

hadoop - 在 Pig 中合并元组

转载 作者:可可西里 更新时间:2023-11-01 14:23:21 25 4
gpt4 key购买 nike

我有两组元组,我想通过第一个元素将它们内部连接并将其他部分合并到一个元组中,想知道如何在 Hadoop 上的 Pig 中实现它?

输入两个元组集,

1,(1,2)
2,(2,3)

1,(b,c,b,c)
2,(c,d,c,d)

预期输出,

1,(1,2,b,c,b,c)
2,(2,3,c,d,c,d)

提前致谢,林

最佳答案

一个值得深思的想法......

输入:

数据A:

1   (1,2)
2 (2,3)

数据B:

1   (b,c,b,c)
2 (c,d,c,d)

pig 脚本:

A = LOAD 'dataA'  USING  PigStorage('\t') AS  (aid:long, atuple : tuple(af1:long, af2:long));
B = LOAD 'dataB' USING PigStorage('\t') AS (bid:long, btuple : tuple(bf1:chararray, bf2:chararray, bf3:chararray, bf4:chararray));
C = JOIN A BY aid, B BY bid;
D = FOREACH C GENERATE aid AS id, FLATTEN(atuple) AS (af1:long, af2:long) , FLATTEN(btuple) AS (bf1:chararray, bf2:chararray, bf3:chararray, bf4:chararray);
E = FOREACH D GENERATE id, (af1..bf4);
DUMP E;

输出:DUMP E:

(1,(1,2,b,c,b,c))
(2,(2,3,c,d,c,d))

关于hadoop - 在 Pig 中合并元组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32389723/

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