MapReduce On Yarn的執行流程

2022-06-17 06:18:14 字數 1023 閱讀 7544

yarn是乙個資源排程平台,負責為運算程式提供伺服器運算資源,相當於乙個分布式的作業系統平台,而mapreduce等運算程式則相當於執行於作業系統之上的應用程式。

yarn的架構如下圖所示:

總的來說,rm有以下功能:

(1)處理客戶端的請求

(3)監控nodemanager

(4)資源分配與排程

(1)負責資料的切分

(2)為應用程式申請資源並分配給內部的任務

(3)任務的監控與容錯

3)nodemanager

nodemanager管理yarn集群中的每個節點,並提供針對集群每個節點的服務,從監督乙個容器的終生管理到監視資源和跟蹤節點健康。而nodemanager管理抽象容器,這些容器代表著可供乙個特定應用程式使用的針對每個節點的資源。

總體來說,nm有以下作用

(1)管理單個節點上的資源

(2)處理來自resourcemanager的命令

4)、container

container是yarn中的資源抽象,它封裝了某個節點上的多維度資源,如記憶體、cpu、磁碟、網路等,當am向rm申請資源時,rm為am返回的資源便是用container表示的。yarn會為每個任務分配乙個container,且該任務只能使用該container中描述的資源。

總的來說,container有以下作用

對任務執行環境進行抽象,封裝cpu、記憶體等多維度的資源以及環境變數、啟動命令等任務執行相關的資訊

執行流程步驟為:

(6)nodemanager為任務設定好執行環境(jar包等),將任務命令寫在乙個指令碼裡。並通過該指令碼啟動任務 task。

總體來說,分為兩步:

2、執行任務,直到任務執行完成。

MapReduce On YARN的工作原理

mapreduce計算框架 將計算過程分為兩個階段 map和reduce map階段並行處理輸入資料 reduce階段對map結果進行彙總 shuffle連線map和reduce兩個階段 map task將資料寫到本地磁碟 reduce task從每個map task上讀取乙份資料 僅適合離線批處理...

mapreduce on yarn的工作流程

當client提交乙個任務後,首先resourcemanger rm 來排程出乙個container,這個container是在nodemanger nm 運作的,am會計算此次任務所需的資源,然後向rm申請資源,得到一組供map reduce task執行的container,然後協同nm一起對每...

shell的執行流控制

case 1 in word1 word1 action1 word2 word2 action2 action3 esac dnf install expect y 問題指令碼 bin bash read p what s your name name read p how old are you...