Fair Scheduler與Capacity Scheduler介紹

破棉襖發表於2014-08-08

原文:http://blog.163.com/ws__fyy/blog/static/122433817201392553459928/

    1 Fair Scheduler

Facebook開發的適合共享環境的排程器,支援多使用者多分組管理,每個分組可以配置資源量,也可限制每個使用者和每個分組中的併發執行作業數量;每個使用者的作業有優先順序,優先順序越高分配的資源越多。

2 Capacity Scheduler

Yahoo開發的適合共享環境的排程器,支援多使用者多佇列管理,每個佇列可以配置資源量,也可限制每個使用者和每個佇列的併發執行作業數量,也可限制每個作業使用的記憶體量;每個使用者的作業有優先順序,在單個佇列中,作業按照先來先服務(實際上是先按照優先順序,優先順序相同的再按照作業提交時間)的原則進行排程。

3 Fair Scheduler vs Capacity Scheduler

(1) 相同點

[1] 均支援多使用者多佇列,即:適用於多使用者共享叢集的應用環境

[2] 單個佇列均支援優先順序和FIFO排程方式

[3] 均支援資源共享,即某個queue中的資源有剩餘時,可共享給其他缺資源的queue

(2) 不同點

[1] 核心排程策略不同。 計算能力排程器的排程策略是,先選擇資源利用率低的queue,然後在queue中同時考慮FIFO和memory constraint因素;而公平排程器僅考慮公平,而公平是透過作業缺額體現的,排程器每次選擇缺額最大的job(queue的資源量,job優先順序等僅用於計算作業缺額)。

[2] 記憶體約束。計算能力排程器排程job時會考慮作業的記憶體限制,為了滿足某些特殊job的特殊記憶體需求,可能會為該job分配多個slot;而公平排程器對這種特殊的job無能為力,只能殺掉這種task。

wda yu

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29754888/viewspace-1248050/,如需轉載,請註明出處,否則將追究法律責任。

相關文章