2013-03-12 167 views
0

我正在Python中編寫MapReduce作業,並且想要使用第三個庫,如chardetHadoop:如何在Python中包含第三方庫MapReduce

我知道我們可以使用選項-libjars=...將它們包含在java MapReduce中。

但是如何在Python MapReduce Job中包含第三方庫?

謝謝!

+0

使用'import'語句嗎? – MattDMo 2013-03-12 03:52:34

+0

謝謝你的回覆。我已經嘗試過,但沒有工作。它顯示'錯誤streaming.StreamJob:作業不成功。錯誤:NA' – thomaslee 2013-03-12 03:54:51

+0

也許如果您發佈了一些示例代碼,您遇到的錯誤以及您爲獲得這些錯誤所做的工作,我們可能會進一步提供幫助。 – MattDMo 2013-03-12 03:58:00

回答

1

問題已由zipimport解決。

然後我壓縮chardet到文件module.mod,像這樣使用:

importer = zipimport.zipimporter('module.mod') 
chardet = importer.load_module('chardet') 

在Hadoop的數據流命令添加-file module.mod

現在可以在腳本中使用chardet

更多詳細信息顯示在:How can I include a python package with Hadoop streaming job?

相關問題