gpt4 book ai didi

hadoop - 像袋子一样压扁元组

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

我的数据集如下所示:

( A, (1,2) )
( B, (2,9) )

我想“展平”Pig 中的元组,基本上是为在内部元组中找到的每个值重复每条记录,这样预期的输出是:

( A, 1 )
( A, 2 )
( B, 2 )
( B, 9 )

我知道当元组 (1,2) 和 (2,9) 是包时这是可能的。

最佳答案

你的洞察力很好;可以通过转换包中的元组来实现。我们要针对的模式是:{a: chararray,{(chararray)}} 例如:(A,{(1),(2)})

这是您的问题的解决方案:

A = LOAD 'data.txt' AS (a:chararray,b:(b1:chararray,b2:chararray));
B = FOREACH A GENERATE a, TOBAG(b.b1,b.b2);
C = FOREACH B GENERATE a, FLATTEN($1);

神奇的部分是 TOBAG 运算符。

关于hadoop - 像袋子一样压扁元组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10594144/

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