1、Fair Scheduler
Facebook開發的適合共享環境的調度器,支持多用戶多分組管理,每個分組可以配置資源量,也可限制每個用戶和每個分組中的併發運行作業數量;每個用戶的作業有優先級,優先級越高分配的資源越多。
2、Capacity Scheduler
Yahoo開發的適合共享環境的調度器,支持多用戶多隊列管理,每個隊列可以配置資源量,也可限制每個用戶和每個隊列的併發運行作業數量,也可限制每個作業使用的內存量;每個用戶的作業有優先級,在單個隊列中,作業按照先來先服務(實際上是先按照優先級,優先級相同的再按照作業提交時間)的原則進行調度。
3、相同點
-
[1]均支持多用戶多隊列,即都適用於多用戶共享集羣的應用環境
-
[2]單個隊列均支持優先級和FIFO調度方式
-
[3]均支持資源共享,即某個queue中的資源有剩餘時,可共享給其他缺資源的queue
4、不同點
-
[1]核心調度策略不同。計算能力調度器的調度策略是,先選擇資源利用率低的queue,然後在queue中同時考慮FIFO和memory constraint因素;而公平調度器僅考慮公平,而公平是通過作業缺額體現的,調度器每次選擇缺額最大的job(queue的資源量,job優先級等僅用於計算作業缺額)
-
[2]內存約束。計算能力調度器調度job時會考慮作業的內存限制,爲了滿足某些特殊job的特殊內存需求,可能會爲該job分配多個slot;而公平調度器對這種特殊的job無能爲力,只能殺掉這種task
原文:https://blog.51cto.com/qishi23/1599138