1. 程式人生 > >【Hadoop】yarn的資源排程

【Hadoop】yarn的資源排程

yarn的資源排程

yarn的資源排程

前言

  • Hadoop作為分散式計算平臺,從叢集計算的角度分析,Hadoop可以將底層的計算資源整合後統一分配到叢集中的計算節點,從而達到分散式和平行計算的目的,最終完成任務的高效執行。
  • 這一核心功能就是作業排程要做的事情。在排程機制中涉及三個核心問題:
    1.計算資源的組織。
    2.使用者作業的選擇策略。
    3.任務的分配策略。

三種主要排程器

  • 排程器主要包括 FIFO排程器,公平排程器,容量排程器。
  • 簡單介紹
    • FIFO排程器
      按照提交的先後順序排列在佇列中按序執行。

    • 公平排程器
      公平度:反映作業已佔用計算資源與它應該分得的計算資源兩者落差的一個測度,公平度值越大越需要被排程

      作業在排程時 取決於公平度,作業的權重以及其所屬的資源池pool的權重。

    • 容量排程器:保證將 記憶體資源需求高的作業 的相關任務 指派到具有充足記憶體資源的TaskTracker上執行。

排程策略對比

排程器 佇列選擇 作業選擇 任務分配
FIFO排程器 僅有一個佇列,不需要進行佇列選擇 按照作業優先順序和提交時間,先進先出 Hadoop以心跳時間片為單位進行輪詢分配任務,在一次心跳時間FIFO排程器最多可以分配多個Map,1個Reduce作業,多個Map作業分配不能超過平均負載
公平排程器 依據Fair Sharing 公平排序演算法對佇列進行排序 按照作業權重公平共享資源 如果配置assign Multiple為true,則每次心跳最多分配1個Map和1個Reduce作業
容量排程器 依據佇列的資源佔用率優先選擇排程資源佔用率低的佇列 在佇列內部使用FIFO原則進行排程 每次心跳最多分配1個Map和1個Reduce作業