2015-09-03 36 views

回答

2

@Lin馬:如果目標是讓每一行作爲元組字段,然後,我們可以使用下面的代碼片段。

輸入:

line1 data .... 
line2 data .... 
line3 data .... 
lineN data ..... 

豬腳本:

text_data = LOAD 'text_data.txt' USING PigStorage('\n') AS (line_data:chararray); 
text_data_gpr_all = GROUP text_data ALL; 
required_data = FOREACH text_data_gpr_all GENERATE BagToTuple(text_data.line_data) ; 
DUMP required_data; 

輸出:

((line1 data ....,line2 data ....,line3 data ....,lineN data .....)) 

編號:http://pig.apache.org/docs/r0.11.0/api/org/apache/pig/builtin/BagToTuple.html

+0

感謝的細節,並試圖你的代碼,它似乎有一個額外的()?你知道爲什麼嗎? –

+0

我需要的是(line1 data .... line2 data .... line3 data .... lineN data .....),它是一個括號。 –

+0

@ LinMa:我們看到了DUMP的結果。 DUMP命令將始終在元組中顯示數據。現有的數據是元組,並且DUMP將在元組中顯示元組數據,因此我們看到兩個括號。如果您使用STORE命令來查看文件中的結果,那麼你將看到的元組編號單括號:http://chimera.labs.oreilly.com/books/1234000001811/ch05.html#pl_dump –