2016-01-24 112 views
0

我使用Apache的豬腳本錯誤加載豬腳本

cat data15.txt 
1,(2,3) 
2,(3,4) 


grunt>a = load 'nikhil/data15.txt' using PigStorage(',') as (x:int, y:tuple(y1:int,y2:int)); 

grunt>dump a; 

(1,) 

(2,) 
+0

代碼格式的[Apache的豬不能充分解析的元組] – Cristik

+0

可能的複製(http://stackoverflow.com/questions/8838408/apache-pig-not-parsing-a-tuple-fully) – madbitloman

回答

0

我知道有困難裝載數據,爲時已晚來回答這個
的問題是,元組和其他領域具有相同的分隔符爲「 「。豬無法進行模式轉換。 你可以嘗試這樣的事情
您需要更改分隔符

1:(-5,7,7-三)
3:(7,9,4)
5:(5,9,7)

並運行豬腳本

A = load 'file.txt' using PigStorage(':') as (t1:int,t2:tuple(x:int,y:int,z:int)); dump A;

輸出是

(1,(-5,7,7-))
(3,(7,9,4))
(5,( 5,9,7))

您可以使用輸入文件中的sed命令更改分隔符,然後加載文件。