1. 程式人生 > 其它 >03_MapReduce框架原理_3.14. MapReduce 開發總結

03_MapReduce框架原理_3.14. MapReduce 開發總結

1. 輸入資料介面 :InputFormat

  1. 預設使用的實現類 :TextInputFormat

  一次讀取一行文字,該行的起始偏移量為key,行內容為value

  2. CombineTextInputFormat 可以將多個小檔案合併成一個切片處理,提高處理效率

3. 部落格連線https://www.cnblogs.com/bajiaotai/p/15709100.html

2. 邏輯處理介面 : Mapper

  1. 根據使用者業務需求 實現三個方法 : map()、setup()、cleanup()

3. 分割槽 : Partitioner

  1. HashPartitioner 預設實現

    根據key的雜湊值和numReduces來返回一個分割槽編號

    key.hashCode()&Integer.MAXVALUE % numReduces

  2. 可繼承 Paritioner來自定義 分割槽器

  3. 部落格連線https://www.cnblogs.com/bajiaotai/p/15720511.html

4. 排序 : Comparable

  1. 當自定義物件為key時,必須實現WritableComparable介面,並重寫compareTo()方法

2. 部落格連線https://www.cnblogs.com/bajiaotai/p/15734910.html

5. 邏輯處理介面 : Reducer

  1. 根據使用者業務需求 實現三個方法 : reduce()、setup()、cleanup()

6. 輸出資料介面 : OutputFormat

  1. TextOutputFormat 預設實現

    將每個key、value 向目標檔案輸出一行

  2. 可以根據自定義OutputFormat

3. 部落格連線https://www.cnblogs.com/bajiaotai/p/15741122.html