CN108628665A - 基于数据密集型科学工作流的任务调度与虚拟机整合方法 - Google Patents
基于数据密集型科学工作流的任务调度与虚拟机整合方法 Download PDFInfo
- Publication number
- CN108628665A CN108628665A CN201810465028.0A CN201810465028A CN108628665A CN 108628665 A CN108628665 A CN 108628665A CN 201810465028 A CN201810465028 A CN 201810465028A CN 108628665 A CN108628665 A CN 108628665A
- Authority
- CN
- China
- Prior art keywords
- task
- virtual machine
- workflow
- time
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种基于数据密集型科学工作流的任务调度与虚拟机整合方法,包括以下步骤:读取数据密集型科学工作流,构造以任务为节点、任务间的数据依赖关系为边的有向无环图;确定工作流虚拟机:通过获取每个任务执行的确切处理时间选择出该工作流相对最适合的虚拟机,并用CPLEX方法进行虚拟机类型的求解;工作流截止期划分:首先将工作流按照数据量大小相似和虚拟机类型相同的任务进行聚类形成n个任务包,然后采用基于浮动区间的方法求得工作流截止期;初始化任务调度:在工作流截止期划分的基础上,采用基于深度的任务调度顺序方法;虚拟机租赁成本优化:采用加权融合新租赁时间片预期利用率的PHD方法进行任务调度。
Description
技术领域
本发明属于数据密集型科学工作流技术领域,尤其是一种基于数据密集型科学工作流的任务调度与虚拟机整合方法。
背景技术
随着计算机网络技术的发展,云计算技术给大数据处理提供了新的技术支持和发展契机。数据密集型数据密集型模式是一种以数据为核心的模式,其特性是执行过程中需要不断获取、共享、更新、存储大规模数据,对于某个数据密集型任务,它所要访问的数据甚至可以遍布大型数据中心的任何地方,所以它的执行效率要很大一部分受制于物理主机和存储结点之间的带宽。因为带宽瓶颈、数据访问延迟以及未加优化的数据迁移机制而使得现有的云系统在满足数据密集型应用方面不尽如人意。
迄今为止,人们已经提出许多数据密集型科学工作流,2009年,Ghafarian等提出将数据密集型工作流先进行子工作流的划分,然后最小化工作流的数据依赖性。然后根据资源的亲密度进行子工作流的分配。2015年,Zhao等提出了一种用于面向数据密集型应用的能量和最后期限的任务调度方法。在该方法中,首先,数据关联聚类方法将数据集和任务建模为一个二叉树。因此,可以大大减少全球数据传输量,有利于降低SLA违背率。其次,“树”基于任务需求程度的计算任务调度方法(TRD)提出,通过减少主动机的数量,降低全局数据传输的时间消耗,优化计算资源和网络带宽的利用率,提高整个云系统的能源利用率。2016年,Zhao等提出了一种改进的基于数据相关聚类的数据布局方法。在初始化阶段,提出了一种基于数据相关聚类和递归划分的数据聚类方法,并与已有的方法相比较,引入了数据大小因子,提出了一种新的矩阵划分方法。以上方法只是通过对任务进行聚类,从而减少deadline,进而提高虚拟机的利用率。但是总体效果不是很理想。
可见,以上经典的方法都存在许多局限性,划分结果并不理想,而且复杂度较高,难以满足大型数据密集型工作流调度和虚拟机成本减低的要求。2015年,Cai等提出了在基于非共享服务的工作流调度与优化。该方法从Pareto解集中挑选成本最低的解作为原关键路径优化问题的解。通过迭代优化多条全关键路径,最小化工作流应用的非共享服务租赁总成本为了增强云环境的各项性能,增加云资源的利用率。2017年,Cai等提出了结合云计算中服务按区间计费的特点,通过对已租赁时间片进行重用,提高资源利用率提出一个任务右移策略和URH方法。实验结果证明这两张策略和规则都能够降低特点类型工作流的资源租赁成本。
然而,由于许多工作流应用存在时效性,也就是具有截止期。长期租赁充足的资源虽然能够满足应用需求,但是容易造成大量的资源浪费。综上所述,现有的数据密集型工作流调度方法在准确度和时间复杂度上都存在很大的提升空间。
发明内容
本发明的目的在于克服现有技术的不足,提供一种基于数据密集型科学工作流的任务调度与虚拟机整合方法,该方法有利于提高deadline的精确度和降低数据密集型科学工作流的资源租赁成本。
本发明解决其技术问题是采取以下技术方案实现的:
一种基于数据密集型科学工作流的任务调度与虚拟机整合方法,包括以下步骤:
步骤1、读取数据密集型科学工作流,构造以任务为节点、任务间的数据依赖关系为边的有向无环图DAG;
步骤2、确定工作流虚拟机:通过获取每个任务执行的确切处理时间选择出该工作流相对最适合的虚拟机,并用CPLEX方法进行虚拟机类型的求解;
步骤3、工作流截止期划分:首先将工作流按照数据量大小相似和虚拟机类型相同的任务进行聚类形成n个任务包,然后采用基于浮动区间的方法求得工作流截止期;
步骤4:初始化任务调度:在工作流截止期划分的基础上,采用基于深度的任务调度顺序方法;
步骤5、虚拟机租赁成本优化:采用加权融合新租赁时间片预期利用率的PHD方法进行任务调度。
进一步,所述步骤2的具体实现方法为:
设αk(k=1,2,...,N)和分别表示任务选取了第K种虚拟机以及该虚拟机的价格在截止期划分阶段,虚拟机采用的计费方式为精确计费而非按区间进行计费,E表示的是采用区间计费模式时虚拟机服务的计费区间的长度,执行任务vi在虚拟机类型α上所需要的总处理时间为Ti,α,此时任务vi在虚拟机类型α上的成本计算方式为Pi,α,Ωi,α=1代表任务vi选择的虚拟机类型α,反之Ωi,α=0,Ei表示的是执行任务vi完毕的结束时间,上述的整数规划模型表示如下:
该式表示最小化虚拟机总租赁成本;
∑α∈NΩi,α=1,1≤i≤N,该式表示每个任务只选择一种类型的虚拟机;
该式表示任务间的偏序约束关系;
E0≥∑α∈NT0,αΩ0,α,该式表示任务间的偏序约束关系;
Ωi,α∈{0,1},α∈M,该式表示任务是否选择某个类型的虚拟机;
EN≤D,该式表示保证工作流总执行时间满足截止期约束;
用CPLEX方法进行虚拟机类型的求解法为:设定特定比例avigap=0.25%,如果某一时刻该任务的最优解和分支限界法的下界之间的差值小于avigap,CPLEX则立刻停止执行,那么此时的最好解将被取为CPLEX的近似解并用符号θ表示,θvi表示的是任务vi在解θ中选择虚拟机的类型。
进一步,所述步骤3的具体实现方法为:
首先,将工作流按照数据量大小相似和虚拟机类型相同的任务进行聚类形成n个任务包:
Tj,a-Ti,a≤120,1≤j≤N,该式表示任务处理时间相差120s以下的进行聚类
∑α∈NΩi,α=1,1≤i≤N,该式表示每个任务只选择一种类型的虚拟机
Ωi,α∈{0,1},α∈M,该式表示任务是否选择某个类型的虚拟机
然后,设当前的关键路径HP={HP[1],HP[2],...HP[l]},l是HP的长度关键路径,关键路径HP的时间间隙为最晚截止时间减去最早开始时间,如果则任务包Vk属于固定任务,Vfix是固定任务包的集合,HP路径上所有任务包的总的时间间隙公式为:
上式中,表示HP的时间间隙,其中HP′=HP/Vfix/{HP[l]}方法中的HP[l]的最晚截止时间为截止期,接下来的路径时间间隙按照运行时间的长度比例为非固定的任务包进行分配,分配给任务任务包vi∈HP的时间间隙公式为:
在这里,还要进行一次时间间隙是否满足判断,如果也就是说最早开始时间加上分配的时间间隙大于最晚截止时间,则将vi分配的时间间隙改为最晚截止时间减去最早开始时间,然后重新更新任务vi的浮动区间并重新计算vi后面的所有后继任务的最早和最晚时间,直到所有的浮动区间不再更新为止,最后形成的最早结束时间就设为工作流的任务的截止期,用Dvii表示vi的截止期。
进一步,所述步骤4的具体实现方法为:
定义l为所有的可调度任务包的集合,可调动任务代表所有的前驱已进行调度的任务包,将l初始化为{v0},将任务包vi的深度μvi设定为由v0到vi所经过的最少的任务数量,若l不为空,那么根据任务包的深度把l划分成多个子集,在得到的所有子集中,选择具有最小深度的子集,然后在其中选取有最大最早结束时间的任务,将其作为下一个需要调度的任务,在每次对一个任务包进行调度之后,更新l,使其放入到所有的前驱已调度的任务包的集合中。
进一步,所述步骤5的具体实现方法为:
(1)计算增加的成本租赁最小时间片方法LMTA:将和分别定义为把vi调度到时需要租赁的租赁区间个数和最大可能要租赁的时间区间的数量:
其中,为ω中所有虚拟机集合上EFTvi到Dvi时间区间内的所有时间槽的集合,时间槽t对应的虚拟机类型是λt,代表任务包vi在选择λt的虚拟机所需要的任务处理时间,Tvi,t表示的是任务vi分配到时间槽s时所需要的数据传输时间,Tt代表虚拟机的安装时间,表示对应软件的安装时间,Tb表示任务包内部所需要传输时间,将其进行规范化后,本规则的优先级值为
(2)计算实际占用的成本租赁最便宜虚拟机规则LCMA:每一个任务所需要的处理成本包括:虚拟机加载所需成本、软件安装所需成本、数据传输需要成本和任务包的执行成本以及每个任务包内部传输所需成本,具体的计算公式如下:
(3)计算新租赁时间片预期的利用率NLEA:将vi调度到t时新生成的时间碎片的长度定义为首先,通过公式计算每个时隙上的加权优先值然后选取最高的优先级,其后再一次对虚拟机进行分配,最终我们采用添加前驱任务的方式来进行对下一个任务的更新准备,将该过程迭代直至当前所有的任务均被调度,具体的计算公式如下:
(4)按照一定的权重整合方式把上述三个启发式规则的启发式值进行整合,得到一个混合启发式值PHD,这个混合启发式值即为将vi调度到每一个时的混合启发式值:
按上述方法直至当前所有的任务均被调度,最后达到满足在规定的工作流截止期内完成相应的任务调度。
本发明的优点和积极效果是:
本发明设计合理,其在保留传统数据密集型科学工作流调度方法优点的前提下,将数据密集型科学工作流调度分为读取数据密集型科学工作流、进行工作流虚拟机的确定、工作流deadline(截止期)划分、初始化任务调度和虚拟机租赁成本优化五个步骤,达到既满足在规定的deadline时间内完成相应的任务调度,又最小化所有任务的总服务租赁成本的效果,在稳定性能和精确度上得到大大提高,能够高效的最小化所有任务的总服务租赁成本。
附图说明
图1为本发明方法的实现流程图;
图2为采用本发明,测试参数a对实验结果的影响,在b和c同时取1的基础上,参数a分别取集合{0,0.1,0.5,1,10,100,1000,10000}中的值的测试结果图;
图3为采用本发明,测试参数b对实验结果的影响,在a和c同时取1的基础上,参数b分别取集合{0,0.1,0.5,1,10,100,1000,10000}中的值的测试结果图;
图4为采用本发明,测试参数c对实验结果的影响,在a和b同时取1的基础上,参数c分别取集合{0,0.1,0.5,1,10,100,1000,10000}中的值的测试结果图;
图5为在任务个数相同时,采用本发明与Cai的MRH方法所产生的deadline的对比图;
图6为在任务个数相同时,采用本发明与Cai的MRH方法所产生的总服务租赁成本对比图。
具体实施方式
以下结合附图对本发明实施例做进一步详述:
一种基于数据密集型科学工作流的任务调度与虚拟机整合方法,如图1所示,包括以下步骤:
步骤A、读取数据密集型科学工作流,构造以任务为节点,任务间的数据依赖关系为边的有向无环图DAG。
具体的,工作流被建模为DAG的具体过程为:E={V,X},其中V={v1,v2,....,vn}表示所有任务的集合,X={(vi,vj)|i<j}用于表示任务之间的偏序依赖关系,也就是说任务vi结束后才可以执行任务vi,βi表示为任务vi的直接前驱集合,§i表示为任务vi的直接后继集合,vi可以到达vi即二者有数据传输则设Path1(i,j)=1表示,相反则为0。
步骤B、确定工作流虚拟机:通过获取每个任务执行的确切处理时间选择出该工作流相对最适合的虚拟机,具体方法将该问题建模成整数规划问题,并用CPLEX方法进行最终解(即虚拟机类型)的求解。
具体的,进行工作流虚拟机的确定过程为:设αk(k=1,2,...,N)和分别表示任务选取了第K种虚拟机以及该虚拟机的价格在截止期的划分阶段,虚拟机采用的计费方式为精确计费而非按区间进行计费,在这里E表示的是采用区间计费模式时虚拟机服务的计费区间的长度,执行任务vi在虚拟机类型α上所需要的总处理时间为Ti,α,此时任务vi在虚拟机类型α上的成本计算方式为Pi,α,Ωi,α=1代表任务vi选择的虚拟机类型α,反之Ωi,α=0,Ei表示的是执行任务vi完毕的结束时间,上述的整数规划模型的详细描述如下:
(最小化虚拟机总租赁成本)
∑α∈NΩi,α=1,1≤i≤N(每个任务只选择一种类型的虚拟机)
(任务间的偏序约束关系)
E0≥∑α∈NT0,αΩ0,α(任务间的偏序约束关系)
Ωi,α∈{0,1},α∈M(表示任务是否选择某个类型的虚拟机)
EN≤D(保证工作流总执行时间满足截止期约束)
使CPLEX(avigap=0.25%),如果某一时刻该任务的最优解和分支限界法的下界之间的差值小于某特定比例avigap,CPLEX则立刻停止执行,那么此时的最好解将被取为CPLEX的近似解并用符号θ表示,θvi表示的是任务vi在解θ中选择虚拟机的类型。
步骤C、工作流deadline(截止期)划分:首先将工作流按照数据量大小相似和虚拟机类型相同的任务进行聚类形成n个任务包,然后采用基于浮动区间的方法求得工作流截止期。
具体的,首先将工作流按照数据量大小相似和虚拟机类型相同的任务进行聚类形成n个任务包:
Ti,a-Ti,a≤120,1≤j≤N(相差到120以下的进行聚类)
∑α∈NΩi,α=1,1≤i≤N(每个任务只选择一种类型的虚拟机)
Ωi,α∈{0,1},α∈M(表示任务是否选择某个类型的虚拟机)
然后,设当前的关键路径,是HP的长度关键路径,关键路径HP的时间间隙为最晚截止时间减去最早开始时间,如果则任务包Vk属于固定任务,Vfix是固定任务包的集合,HP路径上所有任务包的总的时间间隙公式为:
其中,表示HP的时间间隙,其中HP′=HP/Vfix/{HP[l]}方法中的HP[l]的最晚截止时间为截止期D,接下来的路径时间间隙按照运行时间的长度比例为非固定的任务包进行分配,分配给任务任务包vi∈HP的时间间隙公式为:
在这里还要进行一次时间间隙是否满足判断,如果也就是说最早开始时间加上分配的时间间隙大于最晚截止时间,则将vi分配的时间间隙改为最晚截止时间减去最早开始时间,然后重新更新任务vi的浮动区间并重新计算vi后面的所有后继任务的最早和最晚时间,直到所有的浮动区间不再更新为止,最后形成的最早结束时间就设为工作流的任务的截止期,用Dvi表示vi的截止期。
步骤D、初始化任务调度:在deadline划分的基础上,采用基于深度的任务调度顺序方法。
具体的,初始化任务调度过程为:定义l为所有的可调度任务包的集合,可调动任务代表所有的前驱已进行调度的任务包,将l初始化为{v0},将任务包vi的深度μvi设定为由v0到vi所经过的最少的任务数量,若l不为空,那么根据任务包的深度把l划分成多个子集,在得到的所有子集中,选择具有最小深度的子集,然后在其中选取有最大最早结束时间的任务,将其作为下一个需要调度的任务,因为任务包若是具有相同深度,那么其也通常总是具有一样的的软件的需求,在每次对一个任务包进行调度之后,要更新l,使其放入到所有的前驱已调度的任务包的集合中。
步骤E、虚拟机租赁成本优化:提出加权融合新租赁时间片预期利用率的PHD方法进行任务调度。
具体的,虚拟机租赁成本优化为:设表示ω中所有虚拟机集合上EFTvi到Dvi时间区间内的所有时间槽的集合,t为时间槽,然后在改进两种已有工作流虚拟机分配方法的基础上,提出考虑新租赁时间片预期利用率的新方法NLEA,并将三种方法加权融合形成最终的PHD方法。
计算增加的成本租赁最小时间片方法LMTA:因为在绝大多数的情况下,已经租赁的资源时间区间并没有能完全被利用,这样就造了成很多的剩余时间碎片,所以在进行新任务的调度时,尽量重复利用已租赁时间区间剩余时间片,这样能够高效提高已租赁时间区间的利用率,降低最终租赁的总时间区间的数量,将和分别定义为把vi调度到时需要租赁的租赁区间个数和最大可能要租赁的时间区间的数量,具体方法如下:
其中时间槽t对应的虚拟机类型是λt,则代表任务包vi在选择λt的虚拟机所需要的任务处理时间,Tvi,t表示的是任务vi分配到时间槽s时所需要的数据传输时间,Tt代表虚拟机的安装时间,表示对应软件的安装时间,Tb表示任务包内部所需要传输时间,将其进行规范化后,本规则的优先级值为
计算实际占用的成本租赁最便宜虚拟机规则LCMA:在某些情况下,优先将任务调度到时间碎片规则之中,将会使执行效率降低(也就是付出较高的执行成本,但却具有较长的执行时间),譬如,对CPU配置较高的资源的剩余时间片,分配给其内存复杂型的任务,这样,就必须在时间片重新利用与高任务执行效率之间进行取舍,任务在不同的虚拟机实例上的处理效率是不一样的,若是任务的执行效率越高,那么对应的成本便会越低,所以,要首先优选择有较低的成本的虚拟机实例,。每一个任务所需要的处理成本包括:虚拟机加载所需成本、软件安装所需成本、数据传输需要成本和任务包的执行成本以及每个任务包内部传输所需成本,具体的计算公式如下:
新租赁时间片预期的利用率NLEA:前面已经进行了剩余时间碎片的重新利用,在此还需要考虑到的是,在无法再继续使用剩余时间碎片的情况下,需要租赁全新的时间片的预期利用率,具体为,设将vi调度到t时新生成的时间碎片的长度定义为首先通过公式计算每个时隙上的加权优先值然后选取最高的优先级,其后再一次对虚拟机进行分配,最终我们采用添加前驱任务的方式来进行对下一个任务的更新准备,将该过程迭代直至当前所有的任务均被调度,具体的计算公式如下:
最后按照一定的权重整合方式把上述提出的三个启发式规则的启发式值进行整合,得到一个混合启发式值PHD,这个混合启发式值即为将vi调度到每一个时的混合启发式值:
通过以上步骤最终形成基于数据密集型科学工作流加权融合新租赁时间片预期利用率的PHD任务调度方法。
为了说明本发明的效果,进行如下对比实验:
选取工作流包含的任务的数量(Task Number)属于集合{50,100,200,400,800,1000)。带宽B=10(MBps)。软件安装时间=10(秒),虚拟机的加载时间是30秒。进行进行模拟实验。通过图2可以看出,a=100时,方法效果最好。通过图3可以看出,b=1时,方法效果最好;通过图4可以看出,c=10时,方法效果最好。通过图5可以看出,本发明的deadline的值性优于Cai的MRH;通过图6可以看出本发明的租赁成本的值性优于Cai的MRH。
结论证明:本发明方法的稳定性能在MRH方法基础上有了很大改进。综上,该方法使数据密集型工作流调度方法的得到的deadline值和租赁成本都有了一定的提高。可应用于多种不同数量数据密集型工作流调度领域。
需要强调的是,本发明所述的实施例是说明性的,而不是限定性的,因此本发明包括并不限于具体实施方式中所述的实施例,凡是由本领域技术人员根据本发明的技术方案得出的其他实施方式,同样属于本发明保护的范围。
Claims (5)
1.一种基于数据密集型科学工作流的任务调度与虚拟机整合方法,其特征在于包括以下步骤:
步骤1、读取数据密集型科学工作流,构造以任务为节点、任务间的数据依赖关系为边的有向无环图DAG;
步骤2、确定工作流虚拟机:通过获取每个任务执行的确切处理时间选择出该工作流相对最适合的虚拟机,并用CPLEX方法进行虚拟机类型的求解;
步骤3、工作流截止期划分:首先将工作流按照数据量大小相似和虚拟机类型相同的任务进行聚类形成n个任务包,然后采用基于浮动区间的方法求得工作流截止期;
步骤4:初始化任务调度:在工作流截止期划分的基础上,采用基于深度的任务调度顺序方法;
步骤5、虚拟机租赁成本优化:采用加权融合新租赁时间片预期利用率的PHD方法进行任务调度。
2.根据权利要求1所述的基于数据密集型科学工作流的任务调度与虚拟机整合方法,其特征在于:所述步骤2的具体实现方法为:
设αk(k=1,2,...,N)和分别表示任务选取了第K种虚拟机以及该虚拟机的价格在截止期划分阶段,虚拟机采用的计费方式为精确计费而非按区间进行计费,E表示的是采用区间计费模式时虚拟机服务的计费区间的长度,执行任务vi在虚拟机类型α上所需要的总处理时间为Ti,α,此时任务vi在虚拟机类型α上的成本计算方式为Pi,α,Ωi,α=1代表任务vi选择的虚拟机类型α,反之Ωi,α=0,Ei表示的是执行任务vi完毕的结束时间,上述的整数规划模型表示如下:
该式表示最小化虚拟机总租赁成本;
∑α∈NΩi,α=1,1≤i≤N,该式表示每个任务只选择一种类型的虚拟机;
Ei≤Ej-∑α∈NtTi,αΩj,α,该式表示任务间的偏序约束关系;
E0≥∑α∈NT0,αΩ0,α,该式表示任务间的偏序约束关系;
Ωi,α∈{0,1},α∈M,该式表示任务是否选择某个类型的虚拟机;
EN≤D,该式表示保证工作流总执行时间满足截止期约束;
用CPLEX方法进行虚拟机类型的求解法为:设定特定比例avigap=0.25%,如果某一时刻该任务的最优解和分支限界法的下界之间的差值小于avigap,CPLEX则立刻停止执行,那么此时的最好解将被取为CPLEX的近似解并用符号θ表示,θvi表示的是任务vi在解θ中选择虚拟机的类型。
3.根据权利要求1所述的基于数据密集型科学工作流的任务调度与虚拟机整合方法,其特征在于:所述步骤3的具体实现方法为:
首先,将工作流按照数据量大小相似和虚拟机类型相同的任务进行聚类形成n个任务包:
Tj,a-Ti,a≤120,1≤j≤N,该式表示任务处理时间相差120s以下的进行聚类
∑α∈NΩi,α=1,1≤i≤N,该式表示每个任务只选择一种类型的虚拟机
Ωi,α∈{0,1},α∈M,该式表示任务是否选择某个类型的虚拟机
然后,设当前的关键路径HP={HP[1],HP[2],...HP[l]},l是HP的长度关键路径,关键路径HP的时间间隙为最晚截止时间减去最早开始时间,如果则任务包Vk属于固定任务,Vfix是固定任务包的集合,HP路径上所有任务包的总的时间间隙公式为:
上式中,表示HP的时间间隙,其中HP'=HP/Vfix/{HP[l]}方法中的HP[l]的最晚截止时间为截止期,接下来的路径时间间隙按照运行时间的长度比例为非固定的任务包进行分配,分配给任务任务包vi∈HP的时间间隙公式为:
在这里,还要进行一次时间间隙是否满足判断,如果也就是说最早开始时间加上分配的时间间隙大于最晚截止时间,则将vi分配的时间间隙改为最晚截止时间减去最早开始时间,然后重新更新任务vi的浮动区间并重新计算vi后面的所有后继任务的最早和最晚时间,直到所有的浮动区间不再更新为止,最后形成的最早结束时间就设为工作流的任务的截止期,用Dvii表示vi的截止期。
4.根据权利要求1所述的基于数据密集型科学工作流的任务调度与虚拟机整合方法,其特征在于:所述步骤4的具体实现方法为:
定义为所有的可调度任务包的集合,可调动任务代表所有的前驱已进行调度的任务包,将初始化为{v0},将任务包vi的深度μvi设定为由v0到vi所经过的最少的任务数量,若不为空,那么根据任务包的深度把划分成多个子集,在得到的所有子集中,选择具有最小深度的子集,然后在其中选取有最大最早结束时间的任务,将其作为下一个需要调度的任务,在每次对一个任务包进行调度之后,更新使其放入到所有的前驱已调度的任务包的集合中。
5.根据权利要求1所述的基于数据密集型科学工作流的任务调度与虚拟机整合方法,其特征在于:所述步骤5的具体实现方法为:
⑴计算增加的成本租赁最小时间片方法LMTA:将和分别定义为把vi调度到时需要租赁的租赁区间个数和最大可能要租赁的时间区间的数量:
其中,为ω中所有虚拟机集合上EFTvi到Dvi时间区间内的所有时间槽的集合,时间槽t对应的虚拟机类型是λt,代表任务包vi在选择λt的虚拟机所需要的任务处理时间,Tvi,t表示的是任务vi分配到时间槽s时所需要的数据传输时间,Tt代表虚拟机的安装时间,表示对应软件的安装时间,Tb表示任务包内部所需要传输时间,将其进行规范化后,本规则的优先级值为
⑵计算实际占用的成本租赁最便宜虚拟机规则LCMA:每一个任务所需要的处理成本包括:虚拟机加载所需成本、软件安装所需成本、数据传输需要成本和任务包的执行成本以及每个任务包内部传输所需成本,具体的计算公式如下:
⑶计算新租赁时间片预期的利用率NLEA:将vi调度到t时新生成的时间碎片的长度定义为首先,通过公式计算每个时隙上的加权优先值然后选取最高的优先级,其后再一次对虚拟机进行分配,最终我们采用添加前驱任务的方式来进行对下一个任务的更新准备,将该过程迭代直至当前所有的任务均被调度,具体的计算公式如下:
⑷按照一定的权重整合方式把上述三个启发式规则的启发式值进行整合,得到一个混合启发式值PHD,这个混合启发式值即为将vi调度到每一个时的混合启发式值:
按上述方法直至当前所有的任务均被调度,最后达到满足在规定的工作流截止期内完成相应的任务调度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810465028.0A CN108628665A (zh) | 2018-05-16 | 2018-05-16 | 基于数据密集型科学工作流的任务调度与虚拟机整合方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810465028.0A CN108628665A (zh) | 2018-05-16 | 2018-05-16 | 基于数据密集型科学工作流的任务调度与虚拟机整合方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108628665A true CN108628665A (zh) | 2018-10-09 |
Family
ID=63693626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810465028.0A Pending CN108628665A (zh) | 2018-05-16 | 2018-05-16 | 基于数据密集型科学工作流的任务调度与虚拟机整合方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108628665A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109684062A (zh) * | 2018-12-25 | 2019-04-26 | 人和未来生物科技(长沙)有限公司 | 基于成本的跨云平台任务调度方法和系统 |
CN109784663A (zh) * | 2018-12-20 | 2019-05-21 | 西北大学 | 一种工作流调度方法与装置 |
CN109783189A (zh) * | 2018-12-07 | 2019-05-21 | 西北大学 | 一种静态工作流调度方法与装置 |
CN110287017A (zh) * | 2019-07-01 | 2019-09-27 | 北京首都在线科技股份有限公司 | 一种任务调度方法及任务调度装置 |
CN111274009A (zh) * | 2020-01-13 | 2020-06-12 | 南京邮电大学 | 云环境下基于阶段划分的数据密集型工作流调度方法 |
CN114780174A (zh) * | 2022-04-25 | 2022-07-22 | 平安普惠企业管理有限公司 | 工作流中任务运行的配置方法、装置、计算机设备及介质 |
US11593740B1 (en) | 2021-02-25 | 2023-02-28 | Wells Fargo Bank, N.A. | Computing system for automated evaluation of process workflows |
US11630852B1 (en) | 2021-01-08 | 2023-04-18 | Wells Fargo Bank, N.A. | Machine learning-based clustering model to create auditable entities |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104536806A (zh) * | 2014-12-26 | 2015-04-22 | 东南大学 | 一种云环境下的工作流应用弹性资源供应方法 |
CN106339924A (zh) * | 2016-08-29 | 2017-01-18 | 东南大学 | 一种基于工作流的云计算资源混合租赁方法 |
-
2018
- 2018-05-16 CN CN201810465028.0A patent/CN108628665A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104536806A (zh) * | 2014-12-26 | 2015-04-22 | 东南大学 | 一种云环境下的工作流应用弹性资源供应方法 |
CN106339924A (zh) * | 2016-08-29 | 2017-01-18 | 东南大学 | 一种基于工作流的云计算资源混合租赁方法 |
Non-Patent Citations (1)
Title |
---|
蔡志成: "云计算环境下工作流应用的资源供应方法", 《中国博士学位论文全文数据库 信息科技辑》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109783189A (zh) * | 2018-12-07 | 2019-05-21 | 西北大学 | 一种静态工作流调度方法与装置 |
CN109783189B (zh) * | 2018-12-07 | 2022-11-22 | 西北大学 | 一种静态工作流调度方法与装置 |
CN109784663A (zh) * | 2018-12-20 | 2019-05-21 | 西北大学 | 一种工作流调度方法与装置 |
CN109784663B (zh) * | 2018-12-20 | 2022-11-25 | 西北大学 | 一种工作流调度方法与装置 |
CN109684062A (zh) * | 2018-12-25 | 2019-04-26 | 人和未来生物科技(长沙)有限公司 | 基于成本的跨云平台任务调度方法和系统 |
CN110287017A (zh) * | 2019-07-01 | 2019-09-27 | 北京首都在线科技股份有限公司 | 一种任务调度方法及任务调度装置 |
CN111274009A (zh) * | 2020-01-13 | 2020-06-12 | 南京邮电大学 | 云环境下基于阶段划分的数据密集型工作流调度方法 |
US11630852B1 (en) | 2021-01-08 | 2023-04-18 | Wells Fargo Bank, N.A. | Machine learning-based clustering model to create auditable entities |
US11593740B1 (en) | 2021-02-25 | 2023-02-28 | Wells Fargo Bank, N.A. | Computing system for automated evaluation of process workflows |
US11847599B1 (en) | 2021-02-25 | 2023-12-19 | Wells Fargo Bank, N.A. | Computing system for automated evaluation of process workflows |
CN114780174A (zh) * | 2022-04-25 | 2022-07-22 | 平安普惠企业管理有限公司 | 工作流中任务运行的配置方法、装置、计算机设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108628665A (zh) | 基于数据密集型科学工作流的任务调度与虚拟机整合方法 | |
Bessai et al. | Bi-criteria workflow tasks allocation and scheduling in cloud computing environments | |
AU764982B2 (en) | Method for computerized supply chain planning | |
Yu et al. | Workflow scheduling algorithms for grid computing | |
CN105159762B (zh) | 基于贪心策略的启发式云计算任务调度方法 | |
Saif et al. | Multi-objective artificial bee colony algorithm for order oriented simultaneous sequencing and balancing of multi-mixed model assembly line | |
EP0685805A2 (en) | An allocation method for generating a production schedule | |
Kumar et al. | Maximizing business value by optimal assignment of jobs to resources in grid computing | |
JPH09512377A (ja) | プロセスおよびプロジェクト管理コンピュータ・システム用の方法および装置 | |
CN101237469A (zh) | 运用蚁群算法优化多QoS网格工作流的方法 | |
CN108154317A (zh) | 多云环境下基于实例自适应分配整合的工作流组调度方法 | |
CN111695806A (zh) | 一种资源分配方法、装置设备和存储介质 | |
CN111667191A (zh) | 资源专享和转移视角下双目标鲁棒资源分配方法和系统 | |
Maheswaran | Quality of Service Driven Resource Management Algorithms for Network Computing. | |
CN103257900B (zh) | 减少cpu占用的多处理器上实时任务集资源预留方法 | |
CN105897864A (zh) | 一种云工作流调度方法 | |
CN106371924A (zh) | 一种最小化MapReduce集群能耗的任务调度方法 | |
Lu et al. | A resource investment problem based on project splitting with time windows for aircraft moving assembly line | |
Hung et al. | Solving mixed integer programming production planning problems with setups by shadow price information | |
Khojasteh Toussi et al. | EDQWS: an enhanced divide and conquer algorithm for workflow scheduling in cloud | |
Saif et al. | Drum buffer rope-based heuristic for multi-level rolling horizon planning in mixed model production | |
CN106502790A (zh) | 一种基于数据分布的任务分配优化方法 | |
CN104639631A (zh) | 基于mas价格协商的sdn资源交易方法 | |
CN116430736B (zh) | 一种用于航天测控的多智能体自主协同调配方法 | |
Ananth et al. | Cooperative game theoretic approach for job scheduling in cloud computing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20181009 |