2013-02-06 25 views
0

看起來Pig阻止我們重新使用輸出目錄。在這種情況下,我想編寫一個Pig UDF,它將接受一個文件名作爲參數,在UDF中打開該文件並將內容追加到該位置已存在的文件中。這可能嗎?將文件存儲在Pig中已經佔用的位置

在此先感謝

回答

0

這可能是可能的,但我不知道這是可取的。爲什麼不只是有一個新的輸出目錄?例如,如果最終想要將所有結果/path/to/results,STORE中的所有結果的第一次運行輸入爲/path/to/results/001,則下一次運行爲/path/to/results/002,依此類推。通過這種方式,您可以輕鬆識別任何失敗作業中的錯誤數據,並且如果您想將所有這些數據放在一起,則可以執行hdfs -cat /path/to/results/*/*

如果你實際上並沒有要追加而是希望只是取代現有的內容,你可以使用豬的RMF shell命令:

%DEFINE output /path/to/results 
RMF $output 
STORE results INTO '$output';