Hadoop1.x MapReduce的Slot的理解
1.首先,slot不是CPU的Core,也不是memory chip,它是一個邏輯概念,一個節點的slot的數量用來表示某個節點的資源的容量或者說是能力的大小,因而slot是 Hadoop的資源單位。
2.Hadoop利用slots來管理分配節點的資源。每個Job申請資源以slots為單位,每個節點會確定自己的計算能力以及memory確定自己包含的slots總量。當某個Job要開始執行時,先向JobTracker申請slots,JobTracker分配空閒的slots,Job再佔用slots,Job結束後,歸還slots。
3.每個TaskTracker定期(例如淘寶Hadoop心跳週期是5s)透過心跳(hearbeat)與Jobtracker通訊,一方面彙報自己當前工作狀態,JobTracker得夠某個TaskTracker是否Alive;同時彙報自身空閒slots數量。JobTracker利用某個排程規則,如Hadoop預設排程器FIFO或者Capacity Scheduler、FairScheduler等。
4.Hadoop裡有兩種slots, map slots和reduce slots,map task使用map slots,一一對應,reduce task使用reduce slots。
注:現在越來越多的觀點認為應該打破map slots與 reduce slots的界限,應該被視為統一的資源池,they are all resource,從而提高資源的利用率。
區分map slots和reduce slots,容易導致某一種資源緊張,而另一個資源卻有空閒。
在Hadoop的下一代框架MapR中,已經取消了map slots與reduce slots的概念,並將Jobtracker的功能一分為二,用ResourceManager來管理節點資源,用ApplicationMaster來監控與排程作業。ApplicationMaster是每個Application都有一個單獨的例項,application是使用者提交的一組任務,它可以是一個或多個job的任務組成。
5.Hadoop中通常每個tasktracker會包含多個slots,Job的一個task均對應於tasktracker中的一個slot。系統中map
slots總數與reducer slots總數的計算公式如下:
-
Map slots總數=叢集節點數×mapred.tasktracker.map.tasks.maximum
-
Reducer slots總數=叢集節點數×mapred.tasktracker.reduce.tasks.maximum
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30089851/viewspace-2121982/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 對Vue插槽slot的理解Vue
- 深入理解vue中的slot與slot-scopeVue
- MapReduce理解
- Vue 開發之插槽(slot)的理解和使用Vue
- Vue 中的 slotVue
- Vue slot的用法Vue
- [Vue] slot詳解,slot、slot-scope和v-slotVue
- 簡單理解slot演算法和shadow DOM演算法
- Vue(14)slot插槽的使用Vue
- vue的內建元件slotVue元件
- MapReduce 示例:減少 Hadoop MapReduce 中的側連線Hadoop
- MapReduce框架-Join的使用框架
- vue函式元件,slot分發,只實現default slot的問題Vue函式元件
- vue元件化中slot的用法Vue元件化
- 請你說說 Vue 中 slot 和 slot-scope 的原理(2.6.11 深度解析)Vue
- Mapreduce中的Mapper&reducerAPP
- MapReduce的執行流程概述
- Cisco Wireless中顯示的slot0, slot1是什麼含義
- hadoop的mapreduce串聯執行Hadoop
- Hadoop的mapreduce出現問題,報錯The auxService:mapreduce_shuffle does not existHadoopUX
- 好程式設計師大資料培訓分享MapReduce理解程式設計師大資料
- VUE 插槽 slotVue
- __slot__ 限制
- vue slot 用法Vue
- vue插槽slotVue
- Flink 的 Slot 和 parallelism 有什麼區別?Parallel
- Vue.js——slot-插槽的基本使用——2020.12.7Vue.js
- vue2.6之後的 v-slot插槽Vue
- 原來vue的slot可以這麼玩轉Vue
- 大資料計算的基石——MapReduce大資料
- Spark與MapReduce的對比(區別)Spark
- 配置MapReduce時遇到的問題記錄
- mapreduce的程式設計模型,計數器程式設計模型
- PostgreSQL TID及tuple slotSQL
- Vue 作用域插槽slotVue
- 細談 vue - slot 篇Vue
- [原始碼解析] Flink的Slot究竟是什麼?(2)原始碼
- [原始碼解析] Flink的Slot究竟是什麼?(1)原始碼
- Vue.js 你需要知道的 v-slot (譯)Vue.js