Title
Mary, Hugo, And Hugo*: Learning To Schedule Distributed Data-Parallel Processing Jobs On Shared Clusters
Abstract
Distributed data-parallel processing systems like MapReduce, Spark, and Flink are popular for analyzing large datasets using cluster resources. Resource management systems like YARN or Mesos in turn allow multiple data-parallel processing jobs to share cluster resources in temporary containers. Often, the containers do not isolate resource usage to achieve high degrees of overall resource utilization despite overprovisioning and the often fluctuating utilization of specific jobs. However, some combinations of jobs utilize resources better and interfere less with each other when running on the same shared nodes than others. This article presents an approach for improving the resource utilization and job throughput when scheduling recurring distributed data-parallel processing jobs in shared clusters. The approach is based on reinforcement learning and a measure of co-location goodness to have cluster schedulers learn over time which jobs are best executed together on shared resources. We evaluated this approach over the last years with three prototype schedulers that build on each other: Mary, Hugo, and Hugo*. For the evaluation we used exemplary Flink and Spark jobs from different application domains and clusters of commodity nodes managed by YARN. The results of these experiments show that our approach can increase resource utilization and job throughput significantly.
Year
DOI
Venue
2021
10.1002/cpe.5823
CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE
Keywords
DocType
Volume
cluster resource management, distributed data-parallel processing, job co-location, reinforcement learning, self-learning scheduler
Journal
33
Issue
ISSN
Citations 
18
1532-0626
0
PageRank 
References 
Authors
0.34
0
5
Name
Order
Citations
PageRank
Lauritz Thamsen1439.26
Jossekin Beilharz211.71
Vinh Thuy Tran300.34
Sasho Nedelkoski400.34
Odej Kao5106696.19