一种云计算系统中随机事件触发的实时工作流调度方法技术方案

技术编号:15541103 阅读:156 留言:0更新日期:2017-06-05 10:40
本发明专利技术公开了一种云计算系统中随机事件触发的实时工作流调度方法包括:获取虚拟化云中的虚拟机信息与工作流信息;持续获取虚拟机上的任务完成信息与新到达的工作流信息,并在虚拟机上以成本、资源利用率和调度方案波动性作为调度目标,对工作流任务进行动态调度;完成全部任务并返回任务结果。本发明专利技术能够减缓不确定因素对执行调度方案的影响,并在保证工作流时效性的条件下提高虚拟机的资源利用率、降低云服务提供商的成本。

A real-time workflow scheduling method based on random event triggering in cloud computing system

The invention discloses a method including real-time workflow scheduling system in cloud computing random event triggered virtual machine: access to information and workflow information in a virtualized cloud; continued access to virtual machine to complete the task of the new arrival information and workflow information, and in the virtual machine to the cost, resource utilization and scheduling scheme of volatility as the scheduling target and dynamic scheduling of workflow tasks; complete the task and return task results. The invention can slow down the influence of the uncertain factors on the execution scheduling scheme, and improve the resource utilization rate of the virtual machine and reduce the cost of the cloud service provider under the condition of guaranteeing the timeliness of the workflow.

【技术实现步骤摘要】
一种云计算系统中随机事件触发的实时工作流调度方法
本专利技术涉及虚拟化云计算领域,特别地,涉及一种云计算系统中随机事件触发的实时工作流调度方法。
技术介绍
云计算已成为分布式计算的新工作模式。在这种模式下,云供应商以即用即付费的方式,按需为用户提供服务,包括应用、平台与计算资源等。从用户的角度来看,云模式的费用较低,因为用户只需为他们的实际使用付费;同时,用户还可以按需使用资源,因此云模式具有良好的扩展性。云计算已被应用到越来越多领域,包括银行、电子商务、零售业与科研机构。值得注意的是,这些领域中的应用通常包括许多相互约束的计算任务(即工作流任务)。由于任务之间存在约束关系,导致虚拟机在执行相连两个任务之间可能会存在空闲时隙,这会使得虚拟机的资源得不到充分的利用。此外,云系统中的低资源利用率也会造成费用的浪费,对于大规模公司,提高资源利用率能够明显地节约成本。高效的调度算法能够解决上述问题。目前,已经有大量的工作致力于研究云计算系统的工作流调度方法;然而现有的调度方法都基于准确的任务执行时间和任务之间的通信时间。在实际的云计算环境中,任务执行时间通常不能被准确预测,而实际值只有在任务完成后才能获得。这可能由以下两个原因造成:①任务通常包含条件性指令——并行应用程序可能包含多个选择和条件语句,不同的输入将运行应用中不同的分支和循环,而不同的分支或循环就意味着不同的指令数,这将导致相同的任务面对不同的数据输入,可能导致不同的任务运行时间;②云环境中虚拟机的性能具有不确定性——借助先进的虚拟化技术,多个虚拟机可以同时共享一台物理主机的硬件资源,而这种资源共享会导致虚拟机之间的资源冲突,从而造成虚拟机的性能具有不确定性。由于云计算环境的动态性和随机性,众多的不确定因素(如任务执行时间的波动、虚拟机性能的变化、新工作流的到达等)将会出现,使得预先安排的调度方案不能被严格执行。而绝大多数的研究并没有考虑这些动态和随机因素,这可能会造成调度方案的实际运行效果与预期的效果相差甚远。针对现有技术中预先安排的调度方案在不确定因素的作用下不能被严格执行的问题,目前尚未有有效的解决方案。
技术实现思路
有鉴于此,本专利技术的目的在于提出一种云计算系统中随机事件触发的实时工作流调度方法,能够减缓不确定因素对执行调度方案的影响,在保证工作流时效性的条件下,提高虚拟机的资源利用率、降低云服务提供商的成本。基于上述目的,本专利技术提供的技术方案如下:根据本专利技术的一个方面,提供了一种云计算系统中随机事件触发的实时工作流调度方法,包括:获取虚拟化云中的虚拟机信息与工作流信息;持续获取虚拟机上的任务完成信息与新到达的工作流信息,并在虚拟机上以成本、资源利用率和调度方案波动性作为调度目标,对工作流任务进行动态调度;完成全部任务并返回任务结果。其中,虚拟机信息包括:启用虚拟机的数量、每台虚拟机的性能与价格、每两台虚拟机间的通信带宽;工作流信息包括:该工作流的到达时间、截止时间与结构,其中,结构为表明该工作流中所有任务之间依赖关系的有向无环图;工作流中每个任务的执行时间符合独立正态分布。并且,持续获取虚拟机上的任务完成信息,并在虚拟机上以成本、资源利用率和调度方案波动性作为调度目标,对工作流任务进行动态调度包括:将未调度的任务置于任务池中等待处理;持续获取虚拟机上的任务完成信息,并根据虚拟机信息与任务信息,生成任务池中等待任务与虚拟机的映射关系;根据虚拟机信息与虚拟机利用情况调整虚拟机的数量;根据任务池中的等待任务与虚拟机之间的映射关系,将任务分配到对应的虚拟机中。并且,每个工作流的所有任务的完成时间的最大值不应超过工作流的截止时间;对于依赖任务,后继任务的开始时间不应早于前驱任务的完成时间与前驱任务所在虚拟机和后继任务所在虚拟机之间的数据传输时间之和。同时,根据虚拟机信息与任务信息,以虚拟机成本最小化、虚拟机资源利用率最大化、波动最小化为优化目标,生成任务池中等待任务与虚拟机的映射关系。同时,根据虚拟机信息与任务信息将任务池中的任务与虚拟机建立映射关系包括:完成任务的虚拟机若存在等待任务,则执行其等待任务;当被完成任务的后置任务的所有前驱任务已经被映射到虚拟机上时,将被完成任务的后置任务标记为就绪任务并移出任务池;选定工作流中的就绪任务按照期望最晚完成时间从小到大进行排序;按照排序顺序将所有就绪任务依次与虚拟机建立映射关系。并且,就绪任务为不存在前驱任务的任务;或其所有前驱任务都已经被映射到虚拟机,且至少一个前驱任务已经被完成的任务。同时,按照排序顺序将所有就绪任务依次与虚拟机建立映射关系包括:判断是否存在一台虚拟机能在期望最晚完成时间之内以最小期望费用完成被调度的任务,若是,则将任务与该虚拟机建立映射关系;若否,则租赁一台能以最小期望费用在期望最晚完成时间之内完成被调度的任务的新虚拟机,并将任务与该虚拟机建立映射关系。另外,持续获取新到达的工作流信息,并在虚拟机上以成本、资源利用率和调度方案波动性作为调度目标,对工作流任务进行动态调度包括:获取新到达工作流中的任务信息,并将任务置于任务池中等待处理;根据虚拟机信息与任务信息,生成任务池中等待任务与虚拟机的映射关系;根据虚拟机信息与虚拟机利用情况调整虚拟机的数量;根据任务池中的任务与虚拟机之间的映射关系,将任务分配到对应的虚拟机中。并且,每个工作流的所有任务的完成时间的最大值不应超过工作流的截止时间;对于依赖任务,后继任务的开始时间不应早于前驱任务的完成时间与前驱任务所在虚拟机和后继任务所在虚拟机之间的数据传输时间之和。同时,根据虚拟机信息与任务信息,以虚拟机成本最小化、虚拟机资源利用率最大化、波动最小化为优化目标,生成任务池中等待任务与虚拟机的映射关系。同时,根据虚拟机信息与任务信息将任务池中的任务与虚拟机建立映射关系包括:分别判断工作流在任务池中的每个任务是否为就绪任务;选定工作流中的就绪任务按照期望最晚完成时间从小到大进行排序;按照排序顺序将所有就绪任务依次与虚拟机建立映射关系。并且,就绪任务为不存在前驱任务的任务;或其所有前驱任务都已经被映射到虚拟机,且至少一个前驱任务已经被完成的任务。同时,按照排序顺序将所有就绪任务依次与虚拟机建立映射关系包括:判断是否存在一台虚拟机能在期望最晚完成时间之内以最小期望费用完成被调度的任务,若是,则将任务与该虚拟机建立映射关系;若否,则租赁一台能以最小期望费用在期望最晚完成时间之内完成被调度的任务的新虚拟机,并将任务与该虚拟机建立映射关系。从上面所述可以看出,本专利技术提供的技术方案通过使用虚拟机上任务的完成信息与新到达的工作流信息作为执行调度方法的触发条件,根据成本、资源利用率和调度方案的波动性作为调度目标,对工作流任务进行动态调度的技术手段,能够减缓不确定因素对执行调度方案的影响,并在保证工作流时效性的条件下,提高虚拟机的资源利用率、降低云服务提供商的成本。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为根据本专利技术实施例的一种云计算系统中随机事件触发的本文档来自技高网
...
一种云计算系统中随机事件触发的实时工作流调度方法

【技术保护点】
一种云计算系统中随机事件触发的实时工作流调度方法,其特征在于,包括:获取虚拟化云中的虚拟机信息与工作流信息;持续获取虚拟机上的任务完成信息与新到达的工作流信息,并在所述虚拟机上以成本、资源利用率和调度方案波动性作为调度目标,对所述工作流任务进行动态调度;完成全部任务并返回任务结果。

【技术特征摘要】
1.一种云计算系统中随机事件触发的实时工作流调度方法,其特征在于,包括:获取虚拟化云中的虚拟机信息与工作流信息;持续获取虚拟机上的任务完成信息与新到达的工作流信息,并在所述虚拟机上以成本、资源利用率和调度方案波动性作为调度目标,对所述工作流任务进行动态调度;完成全部任务并返回任务结果。2.根据权利要求1所述的方法,其特征在于,所述虚拟机信息包括:启用虚拟机的数量、每台虚拟机的性能与价格、每两台虚拟机间的通信带宽;所述工作流信息包括:该工作流的到达时间、截止时间与结构,其中,所述工作流结构为表明该工作流中所有任务之间依赖关系的有向无环图;所述工作流中每个任务的执行时间符合独立正态分布。3.根据权利要求2所述的方法,其特征在于,持续获取虚拟机上的任务完成信息,并在所述虚拟机上以成本、资源利用率和调度方案波动性作为调度目标,对所述工作流任务进行动态调度包括:将未调度的任务置于任务池中等待处理;持续获取虚拟机上的任务完成信息,并根据所述虚拟机信息与所述任务信息,生成所述任务池中等待任务与所述虚拟机的建立映射关系;根据所述虚拟机信息与虚拟机利用情况调整所述虚拟机的数量;根据所述任务池中的任务与所述虚拟机之间的映射关系,将所述任务分配到对应的虚拟机中。4....

【专利技术属性】
技术研发人员:陈黄科朱晓敏
申请(专利权)人:中国人民解放军国防科学技术大学
类型:发明
国别省市:湖南,43

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

1