大資料學習 Hadoop初識三Yarn模式

2021-08-21 02:59:50 字數 1467 閱讀 6124

閱讀原文

摘要: 我們都知道在如今的hadoop中主要有三個重要的執行管理器。乙個hdfs,乙個mapreduce,還有就是我們今天要看的 yarn。 2.0以前的hadoop 在2.0以前的hadoop中是沒有yarn這個模式管理的。

2.0以前的hadoop

在2.0以前的hadoop中是沒有yarn這個模式管理的。大部分都是獨自作戰。hbase做自己的,spark也是做自己的,等等。這樣的話就會造成資源的浪費,不能充分的把資源給利用上。特別是在1.x的版本上容易出現單點故障,不容易擴充套件的情況。

在這裡client的請求都會通過1個jobtracker來分發任務,如果我們的這個jobtracker出現異常。整個集群就沒法參與正常工作。

在jobtracker 過多的taskscheduler 集中過來,容易造成記憶體,cpu不夠用的情況。增加了任務執行失敗的風險。

因為這些情況,隨著發展,hadoop需要更新的一代管理引擎來幫助我們管理集群-yarn引擎

在2.0的yarn

在新的業務驅動下,發展起來的yarn替代原先的模式。將原先浪費的資源進行合併,共同管理建立在乙個模式管理下

新的yarn模式如下

從圖中我們可以看到 原先的jobtracker 被拆分成 資源管理和任務排程監控。

我們來看下如今的架構

resourcemanager : 在集群中提供資源的統一管理和排程。並且接收來自客戶端的請求。同時不停的接收來自 datanode上的心跳資訊。並且對集群進行管理。

nodemanager :

在整個集群中會有多個該節點。主要用來維護自己節點上資源的管理和使用。

定時向resourcemanager 匯報自己資源的使用情況。並且 接收來自resourcemanager 各種命令

分配任務給接下來的container 。包含啟動,停止任務。

container

封裝了cpu ,memory 等資源的容器。

client

通過client來提交任務,進行任務的開始與結束。並且查詢任務的執行進度等情況。

了解了這幾個功能名稱的作用,我們來看下整個任務執行流程是怎麼樣的。

resourcemanager 分配任務到nodemanager上

閱讀原文

Hadoop大資料 Hive初識

hadoop提供了大資料的通用解決方案,比如儲存提供了hdfs,計算提供了mapreduce思想。但是想要寫出mapreduce演算法還是比較繁瑣的,對於開發者來說,需要了解底層的hadoop api。如果不是開發者想要使用mapreduce就會很困難.另一方面,大部分的開發者都有使用sql的經驗。...

Hadoop大資料 Hive初識

hadoop提供了大資料的通用解決方案,比如儲存提供了hdfs,計算提供了mapreduce思想。但是想要寫出mapreduce演算法還是比較繁瑣的,對於開發者來說,需要了解底層的hadoop api。如果不是開發者想要使用mapreduce就會很困難.另一方面,大部分的開發者都有使用sql的經驗。...

初識大資料(三 Hadoop與MPP資料倉儲)

mpp代表大規模並行處理,這是網格計算中所有單獨節點參與協調計算的方法。是將任務並行的分散到多個伺服器和節點上,在每個節點上計算完成後,將各自部分的結果彙總在一起得到最終的結果。mpp dbms是建立在這種方法之上的資料庫管理系統。在這些系統中的每個查詢都會被分解為由mpp網格的節點並行執行的一組協...