Scheduling for data centers with multi-level data locality

Amirali Daghighi, Mohammadamir Kavousi · 2017

One of the challenging problems in real-time data-parallel processing applications is to schedule tasks to different servers aiming to increase data locality for higher efficiency or lower delay, and at the same time, doing load balancing to stabilize the system of server-queues. We target this problem, and discuss efficient real-time task scheduling algorithms aimed not only to stabilize the system when the arrival rate is in the capacity region (i.e. throughput optimality condition), but also to minimize the mean delay of all tasks in heavy traffic regime when the arrival rate approaches the capacity boundary (i.e. heavy-traffic optimality condition). In this paper, we point out the data locality issue in data centers, and discuss real-time task routing and scheduling, considering both two and three levels of data locality. JSQ-MaxWeight and Pandas algorithms are introduced for two levels of data locality. An extension of JSQ-MaxWeight and Balanced-Pandas are then introduced for a more challenging problem with three levels of data locality. Then Join the Shortest Rack-Priority (JSR-P) is proposed for a system with rack structure (or equivalently with three levels of data locality). The JSR-P algorithm is most suitable for cases where there is no access to fine-grained data about the queue lengths. We run a performance analysis of the algorithms, and compare them both in theory and by simulation. Our rigorous evaluation results show that our proposed JSR-P algorithm is most suitable for low and medium loads.

Read the paper · More papers on PaperTik