2013-10-25 80 views
2

我在豬豬的動態元組?

0,(0),(zero) 
    1,(1,2),(first,second) 

我可以收到此得到的元組數據?

0,0,zero 
    1,1,first 
    1,2,second 
+0

那麼你有什麼嘗試? –

+0

我用動態元組創建了UDF。 – geldar

回答

0

要開始了,我要糾正你的術語,你應該是治療(0)(1,2)袋子,而不是元組。元組旨在成爲代表某種實體的固定長度數據結構。例如,說(name, address, year of birth)。如果您有類似對象的列表,如{(apple), (orange), (banana)},則需要一個包。


不存在允許您「拉鍊」多個行李/列表的行爲。其原因是從設計的角度來看,Pig將袋子當作無序列表,因此術語「袋子」不是「列表」。這個假設確實有助於並行性,因爲您不必考慮命令。因此,1first很難匹配。


什麼,你可以嘗試做的是寫一個eval function UDF,在兩個袋子作爲參數,然後拉鍊了兩個列表,然後返回有拉鍊袋一回。

+0

難道你不能從'STRSPLIT'獲得像這樣的輸出嗎? – mr2ert

+0

他可以用'STRSPLIT'生成單獨的包,但你仍然需要壓縮它們。 –

+0

但'STRSPLIT'返回一個元組。對'$ 0'爲'零'和'first:second'的數據做'STRSPLIT'($ 0,':')'應該產生OP正在談論的內容。 – mr2ert