一种云中基于任务后移的容错任务调度方法技术

技术编号:12389017 阅读:57 留言:0更新日期:2015-11-25 22:20
本发明专利技术公开了一种云中基于任务后移的容错任务调度方法,其特征在于,获取已到达的依赖任务组信息与虚拟化云的物理主机信息;使用PB模型为依赖任务组中的每个任务建立主版本与副版本;为依赖任务组中的每个任务的每个版本均指定一个最早开始时间与一个最晚完成时间;在每个被激活的物理主机上划分出多个虚拟机,获取每个被激活的物理主机上的每个虚拟机信息;将依赖任务组中的每个任务的每个版本在指定的时间段上加载到每个被激活的物理主机上的每个虚拟机中;按照指定的时间安排运行被加载的依赖任务组中的每个任务的每个版本;使用后移任务方法调整已调度任务的最早开始时间为新到达的依赖任务组中的任务提供时间窗口。

【技术实现步骤摘要】

本专利技术涉及云计算领域,特别地,涉及一种云中基于任务后移的容错任务调度方法
技术介绍
由于计算机系统出错的不可预测性,在设计调度算法时加入对容错性的支持至关重要。容错调度算法大体上可以分为两类,即静态容错调度和动态容错调度:静态容错调度在任务提交之前进行调度决策,通常用来调度周期性任务;动态容错调度通常用来调度非周期性任务,其任务到达时间不确定。目前,在分布式计算环境下主要有两种主要的容错调度手段,即重提交和复制。重提交是指当一个任务所分配的计算节点出现故障后,该任务被重新提交。采用重提交方式将会导致一些任务的完成时间推迟,甚至可能会不满足任务的截止期。复制是指通过将一个任务复制成多个版本,之后把每个复制的版本分配到不同的计算节点,以保证即便在资源出现故障的情况下,任务仍能在截止期前成功完成。任务被复制的版本越多,系统的容错能力越强,但这将不可避免地造成大量的资源消耗。因此,采用两个版本的复制方式,即主版本与副版本模型(primary-backupmodel,下文中简称为PB模型)成为目前广为采用的容错手段。为了在保障容错的前提下提高系统可调度性和资源利用率,有不少学者在采用PB模型时研究了如何通过重叠技术减少系统开销。目前主要有两种的重叠模式:副版本-副版本重叠(backup-backupoverlapping,简称BB重叠),即多个不同的副版本可在同一个计算单元上进行重叠;主版本-副版本<br>重叠(primary-backupoverlapping,简称PB重叠),即一个主版本可以和其他任务的副版本在同一个计算单元上重叠。在PB模型中,副版本可进一步分为两种类型,即被动副版本(passivebackup)和主动副版本(activebackup)。被动副版本只在其对应的主版本不能成功完成时开始执行,如果主版本成功完成,副版本将被撤销。尽管上述方法可以减少资源占用,但不能保证所有的任务可在截止期内完成;相反,主动副版本允许一个任务的主版本和副版本在执行时间上有重叠,采用主动副版本执行方式可以减小任务错失截止期的概率,但同时资源利用率也会随之降低。现有技术中已经存在对实时任务进行重叠处理的技术方案,但这些技术方案并未考虑系统的虚拟化,因此仅适用于传统的分布式系统,并不适合虚拟化云计算环境。近来,也有一些云中依赖任务调度方面的研究。但是这些工作都没有在调度时考虑系统出错的情况,不能解决云中容错问题。针对现有技术中缺乏云计算环境下容错任务调度方法的问题,目前尚未有有效的解决方案。
技术实现思路
针对现有技术中缺乏云计算环境下容错任务调度方法的问题,本专利技术的目的在于提出一种云中基于任务后移的容错任务调度方法,能够在云计算环境下采用PB模型进行容错任务的调度,提高资源利用率与容错任务的可调度性。基于上述目的,本专利技术提供的技术方案如下:根据本专利技术的一个方面,提供了一种云中基于任务后移的容错任务调度方法,包括:获取已到达的依赖任务组信息与虚拟化云的物理主机信息;使用PB模型为依赖任务组中的每个任务建立主版本与副版本;根据依赖任务组信息为依赖任务组中的每个任务的每个版本均指定一个最早开始时间与一个最晚完成时间;根据依赖任务组信息激活多个物理主机,并在每个被激活的物理主机上划分出多个虚拟机,获取每个被激活的物理主机上的每个虚拟机信息;根据依赖任务组中的每个任务的每个版本的最早开始时间与最晚完成时间、以及每个被激活的物理主机上的每个虚拟机信息,将依赖任务组中的每个任务的每个版本在指定的时间段上加载到每个被激活的物理主机上的每个虚拟机中;在每个被激活的物理主机上的每个虚拟机中按照指定的时间安排运行被加载的依赖任务组中的每个任务的每个版本;获取新到达的依赖任务组,并使用后移任务方法调整已调度任务的最早开始时间为新到达的依赖任务组中的任务提供时间窗口,并且不影响已调度任务的完成情况;完成依赖任务组的全部任务并返回任务结果。其中,依赖任务组信息包括任务集合、任务间关系集合与任务截止期,任务集合记载了依赖任务组中每个任务的大小,任务间关系集合记载了依赖任务组中任意两个任务之间的依赖关系,任务截止期为依赖任务组的最晚完成时间;物理主机信息包括物理主机集合,物理主机集合记载了每个物理主机处理能力的大小;虚拟机信息包括每个被激活的物理主机上的虚拟机集合,虚拟机集合记载了每个虚拟机所在的物理主机以及每个虚拟机处理能力的大小。并且,使用PB模型为依赖任务组中的每个任务建立主版本与副版本,为在依赖任务组中依次指定每个任务,并为被指定的任务创建一个主版本与一个副版本,其中,同一个任务的主版本与副版本重复进行相同的工作。并且,多个被激活的物理主机之间存在传输时延;根据依赖任务组信息为依赖任务组中的每个任务的每个版本均指定一个最早开始时间与一个最晚完成时间包括:对于任一子任务的主版本,其最早开始时间为其多个父任务中每个父任务的完成时间加上父任务所在物理主机与子任务所在物理主机之间的传输时延之和中的最大值;对于任一子任务的副版本,其最早开始时间为其多个父任务中每个父任务的完成时间加上父任务所在物理主机与子任务所在物理主机之间的传输时延之和、以及同一任务的主版本任务长度二者的较大值;对于任一非子任务的主版本,其最早开始时间为该任务的主版本所在物理主机的所在虚拟机为执行该任务的主版本而准备就绪的时间与该任务所在的依赖任务组信息到达时间中的较大值;对于任一非子任务的副版本,其最早开始时间为该任务的副版本所在物理主机的所在虚拟机为执行该任务的副版本而准备就绪的时间与该任务所在的依赖任务组信息到达时间中的较大值;对于任一任务的任意版本,其最晚完成时间为该任务的截止时间;其中,一子任务与一父任务为一依赖任务对,子任务依赖于父任务,子任务必须获得父任务的执行结果才能执行。同时,将依赖任务组中的每个任务的每个版本在指定的时间段上加载到每个被激活的物理主机上的每个虚拟机中,包括:根据依赖任务组信息的任务间关系集合与任务截止期,估算依赖任务组中的每个任务的截止期;在依赖任务组指定一个非子任务、或所有父任务都已经被调度过的子任务;调度指定任务的主版本到指定主机的指定虚拟机上;调度指定任务的副版本到指定主机的指定虚拟机上;继续指定并调度下一任务。并且,当指定任务的主版本与副版本都在该任务的截止期之前本文档来自技高网
...
一种云中基于任务后移的容错任务调度方法

【技术保护点】
一种云中基于任务后移的容错任务调度方法,其特征在于,包括:获取已到达的依赖任务组信息与虚拟化云的物理主机信息;使用PB模型为所述依赖任务组中的每个任务建立主版本与副版本;根据所述依赖任务组信息为所述依赖任务组中的每个任务的每个版本均指定一个最早开始时间与一个最晚完成时间;根据所述依赖任务组信息激活多个所述物理主机,并在每个被激活的所述物理主机上划分出多个虚拟机,获取每个被激活的所述物理主机上的每个所述虚拟机信息;根据依赖任务组中的每个任务的每个版本的最早开始时间与最晚完成时间、以及每个被激活的所述物理主机上的每个所述虚拟机信息,将所述依赖任务组中的每个任务的每个版本在指定的时间段上加载到每个被激活的所述物理主机上的每个所述虚拟机中;在每个被激活的所述物理主机上的每个所述虚拟机中按照指定的时间安排运行被加载的所述依赖任务组中的每个任务的每个版本;获取新到达的依赖任务组,并使用后移任务方法调整已调度任务的最早开始时间为新到达的依赖任务组中的任务提供时间窗口,并且不影响已调度任务的完成情况;完成依赖任务组的全部任务并返回任务结果。

【技术特征摘要】
1.一种云中基于任务后移的容错任务调度方法,其特征在于,包括:
获取已到达的依赖任务组信息与虚拟化云的物理主机信息;
使用PB模型为所述依赖任务组中的每个任务建立主版本与副版本;
根据所述依赖任务组信息为所述依赖任务组中的每个任务的每个版本均
指定一个最早开始时间与一个最晚完成时间;
根据所述依赖任务组信息激活多个所述物理主机,并在每个被激活的所
述物理主机上划分出多个虚拟机,获取每个被激活的所述物理主机上的每个
所述虚拟机信息;
根据依赖任务组中的每个任务的每个版本的最早开始时间与最晚完成时
间、以及每个被激活的所述物理主机上的每个所述虚拟机信息,将所述依赖
任务组中的每个任务的每个版本在指定的时间段上加载到每个被激活的所述
物理主机上的每个所述虚拟机中;
在每个被激活的所述物理主机上的每个所述虚拟机中按照指定的时间安
排运行被加载的所述依赖任务组中的每个任务的每个版本;
获取新到达的依赖任务组,并使用后移任务方法调整已调度任务的最早
开始时间为新到达的依赖任务组中的任务提供时间窗口,并且不影响已调度
任务的完成情况;
完成依赖任务组的全部任务并返回任务结果。
2.根据权利要求1所述的一种云中基于任务后移的容错任务调度方法,
其特征在于:
所述依赖任务组信息包括任务集合、任务间关系集合与任务截止期,所
述任务集合记载了所述依赖任务组中每个任务的大小,所述任务间关系集合
记载了所述依赖任务组中任意两个任务之间的依赖关系,所述任务截止期为
所述依赖任务组的最晚完成时间;
所述物理主机信息包括物理主机集合,所述物理主机集合记载了每个所
述物理主机处理能力的大小;
所述虚拟机信息包括每个被激活的所述物理主机上的虚拟机集合,所述
虚拟机集合记载了每个所述虚拟机所在的物理主机以及每个所述虚拟机处理
能力的大小。
3.根据权利要求2所述的一种云中基于任务后移的容错任务调度方法,
其特征在于,所述使用PB模型为所述依赖任务组中的每个任务建立主版本
与副版本,为在所述依赖任务组中依次指定每个任务,并为被指定的任务创
建一个主版本与一个副版本,其中,所述同一个任务的主版本与副版本重复
进行相同的工作。
4.根据权利要求3所述的一种云中基于任务后移的容错任务调度方法,
其特征在于,多个被激活的所述物理主机之间存在传输时延;根据所述依赖
任务组信息为所述依赖任务组中的每个任务的每个版本均指定一个最早开始
时间与一个最晚完成时间包括:
对于任一子任务的主版本,其最早开始时间为其多个父任务中每个父任
务的完成时间加上所述父任务所在物理主机与子任务所在物理主机之间的传
输时延之和中的最大值;
对于任一子任务的副版本,其最早开始时间为其多个父任务中每个父任
务的完成时间加上所述...

【专利技术属性】
技术研发人员:朱晓敏包卫东刘忠王吉纪浩然肖文华陈超
申请(专利权)人:中国人民解放军国防科学技术大学
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1