hadoop基礎:第二部分 關於MapReduce

Hadoop基礎:第二章 關於MapReduce

mapReduce執行策略

  • map具備本地化優勢策略
    map執行時優先選擇在存儲HDFS數據的服務器上執行,其次在同機架的服務器上執行,最次在其他機架服務器上執行。
    hadoop執行第一步是將輸入數據分片(分成固定大小),單個分片大小要與HDFS最小數據單元相同,因爲如果一個分片大於HDFS單元的話,就無法保證分片數據在同一臺服務器上。如果跨服務器就會增加網絡傳輸數據的時間消耗。
  • reduce 不具備本地化優勢策略
    reduce任務執行不具備就近原則,會通過網絡將map執行結果傳輸之reduce處理的服務器中,在進行計算。

Hadoop處理流程

  • map對輸入數據進行清洗、篩選工作,準備好具備計算條件的數據。
  • combiner函數在map執行之後執行(可選)(在map執行的服務器上執行),對map處理結果進行二次編輯。
    combiner函數針對單個map結果進行編輯(局部編輯),使用前需考慮局部編輯與全局編輯的結果是否一至。如果不一致還是將編輯放在reduce過程中
  • reduce利用map(和combiner)執行結果進行計算,得到最終計算結果。
發佈了44 篇原創文章 · 獲贊 13 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章