基于代价模型的多平台分析任务流调度优化
2021-11-12徐超一刘晓清
智能计算机与应用 2021年9期
徐超一,刘晓清,顾 淼,王 巍
(1 复旦大学 计算机科学技术学院,上海 200441;2 新浪,北京 100193)
0 引 言
数据量爆炸式增长的同时,数据分析的重要性也日益凸显。多年来,数据分析的各类需求日益旺盛,人们对数据分析的要求也不再局限于更强的数据处理能力,多个计算(分析)平台共同进行一个分析任务流的需求也随之而生。
现实中,人们经常根据数据分析需求的不同,来确定分析任务所使用的执行平台,甚至一个分析任务流中的分析算子,也可能运行在不同的计算平台上。分析任务流在不同平台之间的调度成为人们关注的一个重要问题。
RHEEM[1]是卡塔尔大学开源的跨平台数据处理系统,其支持在一个任务流中自动调用多种平台,来优化处理时间和处理性能。RHEEM借由内部的优化器,通过代价模型自动为任务流中的算子选择平台,获取最优的执行计划。Apache Beam[2]为开源的统一编程模型,用于进行跨平台的大数据分析处理。Beam是基于Google 的Dataflow Model[3]论文的一种实现。通过对数据分析的多维度规范和总结,构成了一套编程范式,实现了不同平台间的统一,但并没有关注任务流的调度问题。Kumar等人基于Actors模型[4]研发了一个带图形界面的任务流系统Amber[5]。但Amber的研究侧重于任务流执行过程中的实时调试,而不关注任务的调度顺序。而目前针对单个任务流调度的研究已经趋于成熟,HEFT[6]、CPOP[7]、PETS[8]等算法,以较高的调度效率被广泛接受。但其都需要知道每个算子的时间、资源开销以及算子间的传输开销,并且都没有考虑多平台的条件。……
登录APP查看全文
