2017-08-29 56 views
0

我開始使用Apache pig,並試圖轉換一個csv文件。Apache-Pig,轉換子組

如果輸入的是這樣的:

1,A,10,SS,11 
,B,11,BB,12 
,D,12,TT,13 
2,A,20,GG,11 
,C,22,YY,9 
,E,30, , 

是否有可能得到下面的輸出?

Number, Type1, Value, Type2, Value, 
    1,  A, 10, SS, 11, 
    1,  B, 11, BB, 12, 
    1,  D, 12, TT, 13, 
    2,  A, 20, GG, 11, 
    2,  C, 22, YY,  9, 
    2,  E, 30,  ,  , 

CSV包含由第一列中的數字標識的部分。第二列中的值在每個部分中都是可變的。每個部分之間的行數也是可變的。

Apache-Pig是解決這類問題的好工具,有人會如何處理這類信息?

+0

第三列總是會增加嗎?我們可以將它用作訂購欄嗎? – MaFF

+0

不,除第一列中的第一行是初始分組字段外,沒有實際的值。輸入是一個單獨的報告被轉換爲csv。 –

回答

0

首先使用bash shell腳本處理這個C​​SV文件,比如where null,添加非空值,使用sed或awk.and然後把修改過的文件放到HDFS中。然後你可以開始Transformation使用豬。