2011-08-30 20 views
2

這似乎是一個非常常見的用例,但在Hadoop中很難做到這一點(可能使用WholeFileRecordReader類)。 Dumbo或Pig都可能嗎? 有誰知道使用Dumbo或Pig處理整個文件爲地圖任務的方法嗎?使用Python代碼處理Hadoop中的整個文件(最好在Dumbo中)

+0

謝謝你的回答。閱讀Hadoop中的文件拆分,我發現標準拆分大小爲64 MB。我的文件很小(幾百KB),並裝入HAR中。這是否意味着他們不會分裂,並且實際上是每個地圖任務處理一個?甚至幾個地圖任務(因爲HAR)? – jan

+0

不,har不會減少地圖的數量。您需要使用MultiFileInputSplit。如果您使用Pig,Pig會自動合併從0.8開始的小文件(http://pig.apache.org/docs/r0.9.0/perf.html#combine-files)。 –

回答

0

WholeFileRecordReader是否意味着不分割輸入文件?如果是這樣,將mapred.min.split.size定義爲一個非常大的值,mapreduce和Pig都會採用它。

+0

謝謝。這聽起來很簡單,但我需要在哪個節點上設置它(我正在使用遠程Hadoop集羣)? – jan

0

我假設你想有一個文件在豬的記錄上。如果沒有,請在你的問題中更具體。

我不知道一次加載整個文件的Pig存儲加載器(在標準分發版或Piggybank中)。我建議你寫自己的Pig custom loader,這相對容易。

相關問題