面向数据处理集群的调度算法学习
机器学习
2019-08-23 v4 机器学习
摘要
在分布式计算集群上高效调度数据处理作业需要复杂的算法。然而,当前的系统使用简单的通用启发式方法并忽略工作负载特征,因为为每种工作负载开发和调优调度策略是不可行的。在本文中,我们展示了现代机器学习技术可以自动生成高效策略。Decima使用强化学习(RL)和神经网络来学习特定于工作负载的调度算法,除高层目标(如最小化平均作业完成时间)外无需任何人类指令。然而,现成的RL技术无法处理调度问题的复杂性与规模。为构建Decima,我们必须开发作业依赖图的新表示、设计可扩展的RL模型,并发明用于处理连续随机作业到达的RL训练方法。我们在25节点集群上与Spark的原型集成表明,Decima相较手工调优的调度启发式方法将平均作业完成时间改善了至少21%,在高集群负载期间实现了高达2倍的提升。
引用
@article{arxiv.1810.01963,
title = {Learning Scheduling Algorithms for Data Processing Clusters},
author = {Hongzi Mao and Malte Schwarzkopf and Shaileshh Bojja Venkatakrishnan and Zili Meng and Mohammad Alizadeh},
journal= {arXiv preprint arXiv:1810.01963},
year = {2019}
}