2013-08-29 52 views
0

我無法用豬加載Microsoft Word文檔(.doc或.docx)。實際上,當我嘗試這樣做時,通過使用TextLoader(),PigStorage()或根本沒有加載器,它不起作用。輸出是一些奇怪的符號。豬 - 用豬加載Word文檔(.doc和.docx)

我聽說我可以在JAVA中編寫自定義加載程序,但它看起來非常困難,而且我也沒有理解目前我們如何編程其中的一個。

我想將所有的.doc文件內容放在一個單獨的chararray包中,以便稍後可以使用過濾器函數來處理它。

我該怎麼辦?

謝謝

回答

1

他們是對的。由於.doc和.docx是二進制格式,所以簡單的文本加載器將無法工作。您可以編寫UDF以將文件直接加載到Pig中,也可以執行一些預處理將所有.doc和.docx文件轉換爲.txt文件,以便Pig將加載這些.txt文件。 This鏈接可以幫助您開始尋找轉換文件的方式。

但是,我仍然建議學習編寫UDF。預處理這些文件將會增加可以避免的大量開銷。

更新:以下是我用於編寫過去的Java(Load)UDF的一些資源。 OneTwo

+0

感謝您的回答。你知道我在哪裏可以找到一個好的和簡單的教程來編寫UDF嗎? –

+0

@shanks_roux我已經添加了一些資源。他們並沒有明確地引導你完成整個過程,但是你應該能夠從他們那裏修補一些東西。 – mr2ert