首頁技術文章正文

MapReduce性能優(yōu)化策略(上)

更新時間:2022-04-13 來源:黑馬程序員 瀏覽量:

IT培訓班

  1.數據輸入

  在執(zhí)行MapReduce任務前,將小文件進行合并,大量的小文件會產生大量的map任務,增大map任務裝載的次數,而任務的裝載比較耗時,從而導致MapReudce運行速度較慢。因此采用CombineTextInputFormat來作為輸入,解決輸入端大量的小文件場景。

  2.Map階段

  (1)減少溢寫(spill)次數:通過調整io.sort.mb及sort.spill.percent參數值,增大觸發(fā)spill的內存上限,減少spill次數,從而減少磁盤I/O。

  (2)減少合并(merge)次數:通過調整io.sort.factor參數,增大merge的文件數目,減少merge的次數,從而縮短mr處理時間。

  (3)在map之后,不影響業(yè)務邏輯前提下,先進行combine處理,減少I/O。

  上面提到的那些屬性參數,都是位于mapred-default.xml文件中,這些屬性參數的調優(yōu)方式如表4-1所示。

  表4-1 Map階段調優(yōu)屬性

1649817519700_Map階段調優(yōu)屬性.jpg

分享到:
在線咨詢 我要報名
和我們在線交談!