pig:如何解析元素数目可变的元组?

0tdrvxhp  于 2021-06-25  发布在  Pig
关注(0)|答案(1)|浏览(288)

这是我的输出文件,我用另一个pig脚本写出来:

1   3,5 
2   4,6,7

我试图将每一行解析为(chararray,tuple)

data = load 'test45'  as (x:chararray, y:tuple());

但是当我尝试转储元组时,它们是空的:

rows = foreach data generate y;

() ()

irlmq6kh

irlmq6kh1#

试试这个。

X = LOAD 'pigtuple.txt' AS (str:chararray);

   X1 = FOREACH X GENERATE FLATTEN(STRSPLIT(str, '\\s+')) AS (id:int, attr:chararray);

   X3 = FOREACH X1 GENERATE id, STRSPLIT(attr, ',') AS (y:tuple());

   X4 = foreach X3 GENERATE id,y;

   dump X4;

如果要访问元组中的每个元素。

X4 = foreach X3 GENERATE y.$0,y.$1;

相关问题