一种云服务资源协同优化调度方法、系统、介质及设备

文档序号:26669931发布日期:2021-09-17 22:18阅读:231来源:国知局
一种云服务资源协同优化调度方法、系统、介质及设备

1.本公开涉及云计算技术领域,特别涉及一种云服务资源协同优化调度方法、系统、介质及设备。


背景技术:

2.本部分的陈述仅仅是提供了与本公开相关的背景技术,并不必然构成现有技术。
3.随着云计算技术的广泛应用,越来越多的数字化资源被部署于云端,相应的资源优化调度机制成为制约其进一步推广的关键技术。针对云计算系统需要兼顾更广泛的云服务资源类型及其协同优化调度问题,本发明研究兼顾安全性、可靠性和可扩展性,能够承载更多种资源模式的云计算架构和管理机制,重点探索云服务资源的建模方法,针对云服务资源协同优化,探讨基于交易的云资源动态优化调度算法。在实践中,云系统所提供的服务往往具有多样性,系统所需要解决的任务复杂多样,且任务数据量庞大,合理的调度系统资源在云计算研究中尤为重要。
4.本公开发明人发现,现有技术中有研究人员应用粒子群优化算法pso优化云计算资源调度策略,减少任务完成时间,提高服务质量,该算法优点是全局搜索能力强,收敛速度快。缺点是未能考虑云计算环境下任务数量与计算资源众多的情况,且pso算法在应用于离散化问题研究中存在缺陷;也有研究人员提出基于迭代次数加权自适应遗传算法中交叉变异算子,并将负载均衡作为评判调度策略的重要影响因素进行研究,提出改进的资源调度算法,该算法优点是了缓解了aga算法在进化初期的寻优能力弱且易陷入局部最优问题,同时解决了以任务执行时间作为适应度标准所产生的负载均衡较差的问题,缺点是迭代次数加权的方法在进化后期仍会出现进化速率慢的问题,收敛速度慢,且考虑的影响因素不足。


技术实现要素:

5.为了解决现有技术的不足,本公开提供了一种云服务资源协同优化调度方法、系统、介质及设备,在缩短任务完成时间的同时,使得云服务资源利用率达到最优,提高了云服务系统的服务质量。
6.为了实现上述目的,本公开采用如下技术方案:
7.本公开第一方面提供了一种云服务资源协同优化调度方法。
8.一种云服务资源协同优化调度方法,包括以下步骤:
9.获取计算任务和计算节点资源,将获取的计算任务进行分解,得到多个大小相同的子任务;
10.将得到的子任务和计算节点资源输入到预设遗传算法模型中,利用根据任务执行时间、计算负载均衡和任务传输时间构建的适应度函数进行调度策略的评价,得到最优的任务调度策略;
11.根据得到的最优调度策略,将子任务分配给相应的计算节点。
12.本公开第二方面提供了一种云服务资源协同优化调度系统。
13.一种云服务资源协同优化调度系统,包括:
14.数据预处理模块,被配置为:获取计算任务和计算节点资源,将获取的计算任务进行分解,得到多个大小相同的子任务;
15.调度策略获取模块,被配置为:将得到的子任务和计算节点资源输入到预设遗传算法模型中,利用根据任务执行时间、计算负载均衡和任务传输时间构建的适应度函数进行调度策略的评价,得到最优的任务调度策略;
16.任务分配模块,被配置为:根据得到的最优调度策略,将子任务分配给相应的计算节点。
17.本公开第三方面提供了一种介质,其上存储有程序,该程序被处理器执行时实现如本公开第一方面所述的云服务资源协同优化调度方法中的步骤。
18.本公开第四方面提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的程序,所述处理器执行所述程序时实现如本公开第一方面所述的云服务资源协同优化调度方法中的步骤。
19.与现有技术相比,本公开的有益效果是:
20.1、本公开所述的方法、系统、介质及电子设备,在预设的遗传算法中,综合考虑任务执行时间、计算负载均衡和任务传输时间进行适应度函数的构建,将传输时间作为评价任务分配策略的影响因素,来减少任务完成时间,提高了策略的合理性和有效性。
21.2、本公开所述的方法、系统、介质及电子设备,将得到的子任务和计算节点资源输入到预设遗传算法模型中,得到了最优的调度策略,在缩短任务完成时间的同时,使得云服务资源利用率达到最优,提高了云服务系统的服务质量。
附图说明
22.图1为本公开实施例1所述的云服务资源协同优化调度方法的流程示意图。
23.图2为本公开实施例1所述的各调度方法的调度策略的任务完成时间对比示意图。
24.图3为本公开实施例1所述的各调度方法的调度策略的负载平衡对比示意图。
25.图4为本公开实施例1所述的各调度方法的调度策略所耗费的任务传输时间对比示意图。
26.图5为本公开实施例1所述的当任务数分别设置为200、400、600、800时所耗费的任务完成时间的折线图。
27.图6为本公开实施例1所述的当计算节点数分别设置为5、10、15、20时所耗费的任务完成时间的折线图。
具体实施方式
28.应该指出,以下详细说明都是例示性的,旨在对本公开提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本公开所属技术领域的普通技术人员通常理解的相同含义。
29.需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本公开的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式
也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
30.在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
31.实施例1:
32.如背景技术中所述,伴随越来越多的数字化资源被部署于云端,合理的任务调度算法成为云平台重要组成部分,合理分配计算资源成为解决资源调度问题的关键。
33.在云计算资源优化调度问题中,任务的完成时间很大程度上决定了服务质量,但单纯的以任务完成时间作为评判调度策略的好坏是片面的,应相应考虑计算资源的负载以及带宽的利用情况。
34.本实施例针对自适应遗传算法存在的问题,对自适应交叉、变异算子进行改进,提出了一种基于改进遗传算法的云服务资源协同优化调度方法(an collaborative optimization scheduling algorithm of cloud service resources based on improved genetic algorithm,osig),如图1所示,通过设计符合云资源协同优化调度问题的适应度算子,并将改进后的遗传算法与改进的适应度算子相结合,应用于云服务资源协同优化调度中,优化了任务策略,提高了计算资源的利用率,降低了服务成本的同时提高服务质量。
35.具体步骤如下:
36.获取计算任务和计算节点资源,将获取的计算任务进行分解,得到多个大小相同的子任务;
37.将得到的子任务和计算节点资源输入到预设遗传算法模型中,利用根据任务执行时间、计算负载均衡和任务传输时间构建的适应度函数进行调度策略的评价,得到最优的任务调度策略;
38.根据得到的最优调度策略,将子任务分配给相应的计算节点。
39.遗传算法是一种通过模仿生物界物种群体的进化过程,从而获得更优秀的个体,得到对于问题的最佳解的智能搜索算法。其中进化的过程往往包括选择、基因重组和基因变异等过程,从而使物种群体按照设定的规则进行演变。由于遗传算法拥有对最优解的探索能力,从而也被众多学者改进并应用于云计算资源优化调度中。
40.在云计算资源优化调度中,遗传算法对计算资源信息以及任务信息进行解析,并通过个体适应度来决策和改变进化策略,具体的解析过程如下:
41.(1)云计算资源调度中染色体编码与解码
42.由于云计算资源调度中,任务数量、计算资源多的特点,使用二进制编码将会使得编码过长,进化过程中编码和解码更加复杂。专利应用浮点数编码方式进行种群个体编码,其编码过程如下:
43.1)对每一个计算任务task
i
随机分配一个虚拟机计算资源vm
j

44.2)将所有任务所分配的虚拟机计算资源编号做组成的队列作为一条染色体,即一个种群个体;
45.(2)初始种群生成
46.初始种群的以随机的方式产生,通过(1)中的编码方式,依据设置的种群大小,将任务分配给不同的计算资源,所有任务的分配组成一个个体,即任务优化调度问题的一个
解,随机生成popsize个个体,组成初始化的种群。
47.(3)改进的适应度算子
48.适应度函数作为种群进化的决定性因素,其合理性直接影响了算法最终所求得的解的有效性。本文综合考虑云计算中任务执行时间(executiontime)、计算负载均衡(load)和任务传输时间(transittime)作为判别任务调度策略好坏的标准,适应度函数如式(1):
[0049][0050]
其中excutiontime,load,transittime分别为该个体解的任务执行时间、负载均衡度和任务传输时间,c1,c2为权重,取值范围在0-1之间,且两者之和为1,其大小的设定代表了对任务完成时间、负载均衡和任务传输时间的关注度。其中任务执行时间的计算方式如式(2):
[0051]
excutiontime=max(vmtime1,vmtime2,

,vmtime
m
)
ꢀꢀꢀ
(2)
[0052]
其中vmtime
i
为第i个计算资源完成被分配任务的总时间,由于云计算任务调度是将大的任务划分为无数个小的任务,从而分布式运行,故任务执行时间为各计算资源执行时间的最大者,vmtime
i
的计算如式(3):
[0053][0054]
instructions
i
为第i个计算资源所被分配的计算指令总数。transittime表示任务传输所花费的时间,计算如式(4):
[0055]
transittime=max(vmtrantime1,vmtrantime2,

,vmtrantime
m
)
ꢀꢀꢀ
(4)
[0056]
vmtrantime
i
为第i个计算资源所被分配的任务传输所耗费的时间,总传输时间为各个计算资源传输时间的最大者。
[0057]
传输时间的计算如式(5):
[0058][0059]
size
i
为该计算资源所被分配的任务总量,dw
i
为该计算资源的带宽,v为1m带宽下每秒所能传输的数据量,单位为kb/s。
[0060]
在分布式的计算中,用户的任务被均匀分割成相同大小的小任务,分配给不同的计算资源,即用户任务的完成时间为所耗费时间最长的计算资源完成任务所花费的时间,利用步骤(3)中的适应度计算公式,负载均衡度(load)为每个计算资源任务完成时间的标准差,标准差越小,说明任务的分配更加均衡,避免个别计算资源繁忙而其他计算资源闲置情况的发生。用户任务完成时间影响了整体的服务质量,而其中任务传输过程中所耗费的时间对整体响应时间有着很大的影响,本实施例所提出的适应度算子考虑综合这一因素,将传输时间作为评价任务分配策略的影响因素,来减少任务完成时间,提高策略的合理性和有效性。
[0061]
(4)选择操作
[0062]
在本实施例的研究中,针对云计算资源调度问题,选择应用轮盘赌法来进行选择操作。所设定的适应度函数,求取每个种群个体的适应度值,通过公式(6)计算每个种群个体的选择概率,之后用轮盘赌法进行选择,由于适应度值高的个体具有更高的被选中概率,
能够保证适应度值高的个体基因被传递到下一代的种群中,有效的探索解空间。
[0063][0064]
其中,f
i
为个体适应度,popsize为种群个体数量,p
i
为个体被选中的概率。
[0065]
(5)交叉与变异算子
[0066]
aga算法(自适应遗传算法)中将原始的等概率交叉算子进行改进,引入了自适应的交叉和变异算子,如式(7)和(8):
[0067][0068][0069]
其中pc、pm分别为种群交叉率和变异率,k
i
为0~1之间的常数,f
max
为当前种群中适应度最高的个体,f'为两个待交叉个体中最大的适应度值,f
avg
为当前群体适应度的均值,f表示待变异个体的适应度值。
[0070]
在交叉与变异过程中,对于高适应度个体减少其交叉和变异的概率,使得优良的个体得到保留,对于低适应度的个体增加交叉和变异的概率,使其能够更大限度的探索较优“染色体”序列。aga算法改善了种群的进化公平性,然而适应度值最大的个体,其交叉和变异的概率为零,这也限制了种群对更高质量解的探索能力,容易使算法的解陷入局部最优。
[0071]
在本实施例的云计算资源调度研究中,交叉和变异过程应用本文所改进的计算公式作为自适应交叉和变异算子进行算法的求解,如式(9)和(10):
[0072][0073][0074]
其中,两种群个体作为父代进行交叉操作后,对产生的子代个体的适应度值进行计算,如果生成的子代个体的适应度低于父代个体,则将父代个体代替子代个体,从而保证子代群体的质量,加快算法的求解速率。
[0075]
方案具体流程如下:
[0076]
(a)用户提交任务给云平台主机;
[0077]
(b)主机将任务进行分解;
[0078]
(c)将计算节点资源参数和分解后的任务参数输入osig算法;
[0079]
(d)算法按照适应度算子迭代进化,进行选择交叉和变异,达到设定的迭代次数,输出任务调度策略;
[0080]
(e)主机依据优化的调度策略,分配任务给相应的计算节点;
[0081]
(f)任务运行完成后,将结果返回用户。
[0082]
为分析本实施例所述的方法在云计算资源调度中的效果,将osig算法与psots(particle swarm optimization based cloud task schedule)、kgts(k
n adaptive genetic algorithm cloud task schedule)算法进行实验对比。实验使用的电脑为一台inter(r)core(tm)i7-6500u 16g内存的windows 10笔记本电脑,其中jdk版本为jdk1.7.0_25,maven版本为3.2.5,所使用的云计算仿真平台为cloudsim 4。实验结果如图(2)-图(6)所示
[0083]
在任务数为400,计算资源数为5时,本实施例所提出的osig资源调度算法,由于综合考虑了带宽在任务传输中的影响,使得传输时间尽可能的小,所求得的调度策略明显优于kgts算法,在任务完成时间上减少了9%,osig算法较psots算法,任务完成时间减少了6%,如图2所示。
[0084]
同时,在该实验参数得设定下,各模型所求得的调度策略的负载平衡如图3所示。虽然基于kgts算法与osig算法在最终解的负载均衡度上相近,但osig对算子改进,使得算法能保持较高的解空间探索能力,收敛速度要比kgts算法的资源调度模型提高了26%,这也验证了算法改进过程中交叉变异算子的合理性。
[0085]
在该实验参数得设定下,各调度方法的调度策略所耗费的任务传输时间如图4所示。本实施例所提出的osig资源调度算法,在适应度函数算子中,综合考虑了传输时间的影响,将传输时间作为评判策略好坏的影响因素,使得求得的资源调度策略远远好于其他算法,比kgts资源调度方法传输时间减少了24.5%,明显缩短了任务的完成时间,osig算法在传输时间上也优于psots算法,传输时间减少了16.6%。
[0086]
云计算环境下,任务数量和计算任务的大小都是庞大的,通过增加任务的数量,能够对资源调度方法的有效性做进一步的检验,将任务数分别设置为200、400、600、800,其调度方法所耗费的任务完成时间如图5所示。在600任务量的云环境下,本实施例所提出的osig资源调度算法要比kgts算法任务完成时间上减少了15%,同比psots算法完成时间减少了8%,在任务数量增加至800时,osig比kgts在任务完成时间减少了15.8%,比psots减少8%。
[0087]
在云计算环境下,由于任务数量和计算任务的大小都是庞大的,计算节点的数量也较多,较多的计算节点能够有效降低任务的完成时间的总时间,将计算节点数分别设置为5、10、15、20,其调度方法所耗费的任务完成时间如图6所示。osig算法从整体上明显优于其它资源调度算法,且随着计算资源数量的增加,优势更加显著。在计算资源数为15、任务量为400时,任务完成时间相对于kgts调度算法减少了10%,当计算资源增加至20时,任务完成时间相对于kgts调度算法减少了15.4%。
[0088]
实施例2:
[0089]
本公开实施例2提供了一种云服务资源协同优化调度系统,包括:
[0090]
数据预处理模块,被配置为:获取计算任务和计算节点资源,将获取的计算任务进
行分解,得到多个大小相同的子任务;
[0091]
调度策略获取模块,被配置为:将得到的子任务和计算节点资源输入到预设遗传算法模型中,利用根据任务执行时间、计算负载均衡和任务传输时间构建的适应度函数进行调度策略的评价,得到最优的任务调度策略;
[0092]
任务分配模块,被配置为:根据得到的最优调度策略,将子任务分配给相应的计算节点。
[0093]
所述系统的工作方法与实施例1所述的优化调度方法相同,这里不再赘述。
[0094]
实施例3:
[0095]
本公开第三方面提供了一种介质,其上存储有程序,该程序被处理器执行时实现如本公开实施例1所述的云服务资源协同优化调度方法中的步骤。
[0096]
实施例4:
[0097]
本公开实施例4提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的程序,所述处理器执行所述程序时实现如本公开实施例1所述的云服务资源协同优化调度方法中的步骤。
[0098]
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
[0099]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0100]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0101]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0102]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)或随机存储记忆体(random accessmemory,ram)等。
[0103]
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修
改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1