天天看點

MapReduce之OutputFormat資料輸出

1.OutputFormat接口實作類

    OutputFormat是MapReduce輸出的基類,所有實作MapReduce輸出都實作了 OutputFormat接口。下面我們介紹幾種常見的OutputFormat實作類。

(1).文本輸出TextOutputFormat

    預設的輸出格式是TextOutputFormat,它把每條記錄寫為文本行。它的鍵和值可以是任意類型,因為TextOutputFormat調用toString()方法把它們轉換為字元串。

(2).SequenceFileOutputFormat

    SequenceFileOutputFormat将它的輸出寫為一個順序檔案。如果輸出需要作為後續 MapReduce任務的輸入,這便是一種好的輸出格式,因為它的格式緊湊,很容易被壓縮。

(3).自定義OutputFormat

    根據使用者需求,自定義實作輸出。

2.自定義OutputFormat

    為了實作控制最終檔案的輸出路徑,可以自定義OutputFormat。

    要在一個mapreduce程式中根據資料的不同輸出兩類結果到不同目錄,這類靈活的輸出需求可以通過自定義outputformat來實作。

(1).自定義OutputFormat步驟

(a)自定義一個類繼承FileOutputFormat。

(b)改寫recordwriter,具體改寫輸出資料的方法write()。

(2).實操案例:

繼續閱讀