【技术实现步骤摘要】
一种异构集群下Spark应用的能量感知调度方法
本专利技术涉及一种硬截止时间约束的异构集群环境下Spark应用的能量感知任务调度方法,属于云计算资源调度
技术介绍
过去十年来,云计算数据中心占到了全球所用总电量的2.4%,并且产生了300亿美元的经济影响。数据中心消耗的能源每年增长超过15%,能源成本占数据中心运营成本的42%左右。考虑到服务器等硬件成本仍然在不断下降,可以说在不久的将来数据中心成本的很大一部分是能耗成本。因此,在向客户提供服务时,数据中心最大限度地降低能耗是十分必要的。任务调度对于数据中心的节能至关重要。例如,在AIS(All-InStrategy)系统中,只要还有一台服务器仍在工作,就无法统一关闭集群中其他空闲的服务器,数据中心就会浪费大量能量。如果使用合理的调度策略,使得这几台服务器几乎同时间完成,那么一方面可以缩短任务执行时间,另一方面可以尽早统一关闭服务器,从而降低能耗。Spark默认调度策略有2种:FIFO模式和Fair共享模式调度策略,但是上述两种策略缺乏整体上对资源的掌控与分配,会造成很多不必要的开销和资源的浪费。比如,在FIFO模式下,将Spark任务流中的任务按照初始任务序列将任务分配到集群中,则集群中各节点在任务执行时可能会出现高能耗节点超负荷运行而低能耗节点处于“空闲”状态,造成整个应用不能在截止时间内完成执行失败,或者能耗过高的问题。
技术实现思路
专利技术目的:针对云计算环境下的调度优化问题也是围绕最大化用户层面或者服务提供商层 ...
【技术保护点】
1.一种异构集群环境下Spark应用的能量感知调度方法,其特征在于,包括如下步骤:/n步骤1,根据 Spark工作流的偏序性质,确定 Spark任务流的有效拓扑排序,根据排序模型来生成调度队列Q;/n步骤2,依次从调用队列中Q中取出任务vi,计算任务vi 在每个物理机 Mk 上的处理时间得到最早完成时间,通过计算最小的调度长度来获得该Spark 应用的确切松弛时间;/n步骤3,对所有任务进行执行时间估计,根据估算出来的任务执行时间以及Spark应用工作流的截止期,对任务进行子截止期划分;/n步骤4,将调度队列Q 中的每个任务vi 分配给异构的资源,计算总能耗E;/n步骤5,执行步骤4后,获得初始调度解决方案,使用DVFS降低频率;/n步骤6,采用基于变邻域下降的任务序列调整方法,通过交换初始任务调度序列 Q0中的任务节点生成新的任务调度系列,转步骤2,来获取能耗更低的资源分配方案;/n步骤7,如果任务队列Q为空,则方法结束;否则,转步骤4。/n
【技术特征摘要】 【专利技术属性】
1.一种异构集群环境下Spark应用的能量感知调度方法,其特征在于,包括如下步骤:
步骤1,根据Spark工作流的偏序性质,确定Spark任务流的有效拓扑排序,根据排序模型来生成调度队列Q;
步骤2,依次从调用队列中Q中取出任务vi,计算任务vi在每个物理机Mk上的处理时间得到最早完成时间,通过计算最小的调度长度来获得该Spark应用的确切松弛时间;
步骤3,对所有任务进行执行时间估计,根据估算出来的任务执行时间以及Spark应用工作流的截止期,对任务进行子截止期划分;
步骤4,将调度队列Q中的每个任务vi分配给异构的资源,计算总能耗E;
步骤5,执行步骤4后,获得初始调度解决方案,使用DVFS降低频率;
步骤6,采用基于变邻域下降的任务序列调整方法,通过交换初始任务调度序列Q0中的任务节点生成新的任务调度系列,转步骤2,来获取能耗更低的资源分配方案;
步骤7,如果任务队列Q为空,则方法结束;否则,转步骤4。
2.如权利要求1所述的异构集群环境下Spark应用的能量感知调度方法,其特征在于,步骤1中针对Spark应用中Job、Stage的偏序关系,从两个层面来考虑:Job层面考虑设计相应的排序规则,获取Job的排序序列;Stage层面的序列一方面是指同一Job中设计相应的排序规则获取的排序序列,另一方面是指不同的Job中Stage的排序序列。
3.如权利要求1所述的异构集群环境下Spark应用的能量感知调度方法,其特征在于,步骤1中所述Spark工作流、排序模型表示,具体为:
Spark任务流:S{v1,v2,..,vN}是一个在Job、Stage和Task三个层面上都存在偏序关系的任务流;
具体的排序模型有如下三种:
一,为每个任务计算UpwardRank值,根据计算得到的rank(vi)将任务以递增顺序进行排列;
技术研发人员:文建璋,陈祥军,
申请(专利权)人:南京南软科技有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。