Concepedia

Publication | Closed Access

Apollo: scalable and coordinated scheduling for cloud-scale computing

303

Citations

28

References

2014

Year

TLDR

Efficiently scheduling data‑parallel jobs on cloud‑scale clusters is critical for performance, throughput, and utilization, a challenge amplified by larger clusters and increasingly complex, diverse workloads. The paper introduces Apollo, a scalable, coordinated scheduling framework deployed at Microsoft to efficiently schedule thousands of computations with millions of tasks across tens of thousands of machines daily. Apollo makes distributed scheduling decisions using global cluster data through a loosely coordinated mechanism, optimizing future resource availability and multiple performance and system factors within a unified model. Apollo proves robust, gracefully exploiting idle resources while ensuring guaranteed resources amid unexpected system dynamics.

Abstract

Efficiently scheduling data-parallel computation jobs over cloud-scale computing clusters is critical for job performance, system throughput, and resource utilization. It is becoming even more challenging with growing cluster sizes and more complex workloads with diverse characteristics. This paper presents Apollo, a highly scalable and coordinated scheduling framework, which has been deployed on production clusters at Microsoft to schedule thousands of computations with millions of tasks efficiently and effectively on tens of thousands of machines daily. The framework performs scheduling decisions in a distributed manner, utilizing global cluster information via a loosely coordinated mechanism. Each scheduling decision considers future resource availability and optimizes various performance and system factors together in a single unified model. Apollo is robust, with means to cope with unexpected system dynamics, and can take advantage of idle system resources gracefully while supplying guaranteed resources when needed.

References

YearCitations

Page 1