0
我正在編寫以gz文件作爲輸入的mapreduce。 某些gz文件實際上已損壞。但是製圖人員沒有注意到併成功完成了這項工作。 請問hadoop如何處理這類文件? 我們無法使用gunzip從命令行打開錯誤gz文件。 謝謝〜關於gz文件作爲hadoop mapreduce作業輸入的輸入
我正在編寫以gz文件作爲輸入的mapreduce。 某些gz文件實際上已損壞。但是製圖人員沒有注意到併成功完成了這項工作。 請問hadoop如何處理這類文件? 我們無法使用gunzip從命令行打開錯誤gz文件。 謝謝〜關於gz文件作爲hadoop mapreduce作業輸入的輸入
Hadoop將gz文件傳輸到映射程序正在執行的節點;解壓縮文件然後迭代內容。每個文件將由一個映射器進行操作。
如果文件損壞,映射器可能永遠不會真正執行映射器(或者只是映射函數,如果我們假設映射器獲取已啓動; Hadoop嘗試解壓文件;靜默失敗並繼續到映射器爲輸入一個空文件。在「解壓縮文件」的內容是空的,這使得映射器成功完成。
您可能需要在setup
和cleanup
功能,從而讓你檢測「空一些代碼'文件,所以你可以增加一個計數器,說這個工作並沒有實際處理任何數據。