2017-04-06 90 views
0

我有不包含相同的數據量的元組:
(A,B,C,d)
(E,F)
(G,H,I)鴻溝元組成的多個元組

我想什麼做的是爲每一個數據新的元組:
的(a)
(b)
(c)中
(d)
(E)
(F)
(G)
(H)
(I)

感謝您的幫助

回答

0

假設你有一個關係的,那麼下面的語句會給你所需的輸出。

B = FOREACH A GENERATE FLATTEN(ToBag(*)); 
0

這裏是你如何製作你需要的結果(已經測試過它):

Data: 
a,b,c,d 
e,f 
g,h,i 

比方說你有關係這一數據,A

A = LOAD 'data file' using PigStorage(','); 

Next語句轉換每一行放入一個袋子中,這是下一步產生所需結果所必需的。在這個操作之後,每個記錄/元組將有一個元素,一個包。

B = foreach A generate TOBAG(*); 

Flatten將袋子中的每個元素都放在不同的行中。

C = foreach B generate flatten($0); 

dump C; 
(a) 
(b) 
(c) 
(d) 
(e) 
(f) 
(g) 
(h) 
(i)