本发明涉及计算机技术中云计算领域,更具体的是一种基于云服务的成本高效的科学工作流容错调度技术
背景技术:
1、云服务提供商的基本产品被归类为软件即服务(saas),平台即服务(paas)和基础设施即服务(iaas)三种,软件即服务广泛应用于远程软件服务,以互联网为载体为客户提供软件服务;平台即服务指的是为开发、构建和部署应用程序所提供的应用程序开发平台,包括开发环境、使用工具以及软件等;基础设施即服务指的是为公司或个人提供服务,中间件关联的的计算资源,包括网络、存储以及操作系统等。
2、云计算技术的主要吸引力在于虚拟化、快速弹性、按需付费、按需访问等。这些特点使得云计算系统非常适合处理多样性需求和计算密集型科学工作流应用程序,诸如地震科学中的cybershake和物理学中的ligo等科学工作流已成功部署到商业云中。
3、大规模科学工作流应用程序通常由大量优先约束的任务组成,这些任务通过数据流和控制流依赖关系连接起来,因此,为科学应用提供高可靠的计算服务是云计算系统面临的一个重要挑战,为了达到任务所需的可靠性,需为此提供一些容错策略,此外用户对于应用程序的响应时间通常具有一定的要求,应用程序提供商在为用户提供服务时,还面临着降低财务成本的挑战。
技术实现思路
1、本发明为解决异构云计算系统中可靠性约束下最优化成本问题。
2、本发明采取一下技术方案:
3、根据云平台信息,构建可靠性约束下最小化成本的目标并求解,算法的整体流程如图1所示,整体架构图如图2所示。
4、对于到来的请求建模成为任务组成的有向无环图,图中节点表示任务,边表示任务之间的通信时间。以下为算法主要步骤:
5、s1、计算任务的向上排序值,根据任务向上排名值确定任务的优先级。
6、s2、串型任务标记,充分利用关联任务之间数据传输的特性来降低工作流的执行成本。核心思想是将工作流中串型的任务,即为一对一的任务进行标记,后续将同属一组的标记任务分配到同一台虚拟机上,从而减少无效的数据传输时间,由此可以节省虚拟机的运行时间,进而降低虚拟机的租赁成本。
7、s3、任务的子可靠性分配,工作流的可靠性值是所有任务可靠性值的乘积,因此该问题可以通过将工作流应用的可靠性要求转移到任务的子可靠性要求来解决。
8、s4、虚拟机效率评估阶段,根据优化目标,综合任务执行可靠性,成本,以及执行时间三者,为任务选择合适的虚拟机进行分配。
9、s5、初始化调度阶段,由于不同的任务之间的所分配的可靠性需求不同,因此每个任务的副本数量也会有所区别,考虑到虚拟机的故障问题,对同一任务的不同副本,不能放置在同一台虚拟机上,但可动态申请同类型虚拟机资源,为了减少成本,使用完毕后便释放该虚拟机资源。
10、s6、已分配虚拟机的任务迁移算法,充分利用以小时为计费单位的机制,对于每台已分配了任务的虚拟机,上的任务部署情况进行检查,并考虑放置在其它类型虚拟机上能否在不降低可靠性的前提下,降低成本。若符合不降低可靠性,且成本降低的前提条件,进行任务迁移。
11、优选的,在s2中具备一对一特性的任务是指如果当前任务ncur有唯一的后继任务nnext,并且nnext仅有ncur一个前驱任务时,将ncur和nnext进行标记,之后将当前的nnext作为新的ncur使用递归函数逐渐向下遍历,直到完成所有串型任务的标记。
12、优选的,将工作流的可靠性要求转移到每个任务的子可靠性要求上。为任务定义可靠性上界可避免为任务分配的子可靠性要求过高,造成副本冗余带来成本的提升,同时结合已分配子可靠性要求的任务,来保证最后的工作流可靠性符合要求。
13、优选的,在s4中同一任务在不同类型的虚拟机实例上的执行时间也并不相同,执行时间越短,任务的可靠性就越高,然而这类虚拟机的租赁成本也相对较高。由此可知,在选择vm的时候,要综合考虑可靠性,成本以及执行时间。因此引入了一个具有成本、可靠性、时间感知的调度指标。
14、优选的,在公共云提供商(amazon ec2)为虚拟机采用以小时为计费周期的定价模型,根据该定价模型,对已分配了任务的虚拟机,考虑进行任务迁移,避免一些任务过多占用计费周期。
15、本发明对比现有技术具有以下优点:
16、本发明为一种基于云服务的成本高效的科学工作流容错调度技术,充分利用了任务之间的依赖关系,减少了任务之间的传输时延。采用启发式的算法对可靠性预分配策略进行改进,充分利用了副本的方式进行容错,保障工作流的高可靠性执行。
17、相比于现有技术,本发明的基于云服务的成本高效的科学工作流容错调度技术具有以下优点:本算法在云计算系统中资源异构的环境下,满足工作流可靠性的前提下以最小化工作流执行成本为目的创建优化模型,并采用低复杂度的启发式算法进行求解,得到了成本高效的任务副本和资源分配方案。
1.基于云服务的成本高效的科学工作流容错调度技术,实现了可靠性约束下最优化成本调度,主要包括以下步骤:
2.根据权利要求1所述的基于云服务的成本高效的科学工作流容错调度技术,对云计算系统进行如下建模:
3.根据权利要求1所述的基于云服务的成本高效的科学工作流容错调度技术,其可靠性模型如下:
4.根据权利要求1所述的基于云服务的成本高效的科学工作流容错调度技术,其优化目标和约束条件如下: