mapreduce的型別與格式

2021-09-02 12:35:57 字數 555 閱讀 8347

1:預設的mapreduce作業

預設的輸入格式是textinputformat

預設的partitioner是hashpartitioner

預設的reducer是reducer

預設情況下,只有乙個reducer

沒有設定map任務的數量,原因是該數量等於輸入檔案被劃分成的分塊數,取決於輸入檔案的大小以及檔案塊的大小

reducer的個數 在本地作業執行器上執行時,只支援0個或1個reducer,reducer最優個數與集群中可用的reducer任務槽數相關。通常將reducer數比總槽數稍微少一些,使用更多reducer

2:預設的streaming作業

3:輸入格式

輸入分片與記錄:乙個輸入分片就是乙個有單個map操作來處理的輸入塊,每乙個map操作只處理乙個輸入分片。

每個分片被劃分為若干個記錄,每條記錄就是乙個鍵/值對,map乙個接乙個地處理記錄。在資料庫的場景中,乙個輸入分片對應於乙個表上的若個行,而一條記錄對應到一行。

主要包括文字輸入,二進位制輸入,多個輸入,資料庫輸入

4:輸出格式與輸入格式類似 

MapReduce的型別與格式

之前討論過,輸入資料的每個分片對應乙個map任務來處理 在mapreduce中輸入分片被表示為inputsplit類,原型如下 public abstract class inputsplit 開發者不用直接操作inputsplit,inputformat根據輸入的資料來建立計算的inputspli...

MapReduce的型別和格式

context類物件用於輸出鍵 值對 map k1,v1 list k2,v2 combiner k2,list v2 list k2,v2 reduce k2,list v2 list k3,v3 partition函式對中間結果的鍵值對 k2 v2 進行處理,並返回乙個分割槽索引 partiti...

Mapreduce的輸入格式

map k1,v1 list k2,v2 reduce k2,list v2 list k3,v3 reduce的輸入型別必須與map函式的輸出型別相同 combine的輸入輸出鍵值型別必須相同,也就是k2,v2 static class reducer extends reudcer partio...