我有一个中间的pig结构,比如(a,b,(n。无示例:
(a1,b1, (c11,c12)) (a2,b2, (c21)) (a3,b3, (c31,c32, c33))
现在,我要格式化的数据
(a1, b1, c11) (a1, b2, c12) (a2, b2, c21) etc.
我该怎么做呢?本质上我需要元组的大小,然后使用这个大小运行嵌套for循环。
vx6bjr1n1#
你能试试下面的方法吗?输入
a1 b1 (c11,c12) a2 b2 (c21) a3 b3 (c31,c32,c33)
Pig手稿:
A = LOAD 'input' AS(f1,f2,T:(f3:chararray)); B = FOREACH A GENERATE f1,f2,FLATTEN(T); C = FOREACH B GENERATE f1,f2,FLATTEN(TOKENIZE(T::f3)); DUMP C;
输出:
(a1,b1,c11) (a1,b1,c12) (a2,b2,c21) (a3,b3,c31) (a3,b3,c32) (a3,b3,c33)
1条答案
按热度按时间vx6bjr1n1#
你能试试下面的方法吗?
输入
Pig手稿:
输出: