CN110519386B - 云环境下基于数据聚类的弹性资源供应方法和装置 - Google Patents
云环境下基于数据聚类的弹性资源供应方法和装置 Download PDFInfo
- Publication number
- CN110519386B CN110519386B CN201910816112.7A CN201910816112A CN110519386B CN 110519386 B CN110519386 B CN 110519386B CN 201910816112 A CN201910816112 A CN 201910816112A CN 110519386 B CN110519386 B CN 110519386B
- Authority
- CN
- China
- Prior art keywords
- task
- clustering
- resources
- tasks
- cloud environment
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000012545 processing Methods 0.000 claims abstract description 14
- 239000011159 matrix material Substances 0.000 claims description 42
- 238000005265 energy consumption Methods 0.000 claims description 19
- 238000004422 calculation algorithm Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 9
- 238000003860 storage Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 14
- 230000010354 integration Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000005311 autocorrelation function Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 239000002699 waste material Substances 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004134 energy conservation Methods 0.000 description 1
- 238000005530 etching Methods 0.000 description 1
- 125000001475 halogen functional group Chemical group 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000000059 patterning Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/147—Network analysis or design for predicting network behaviour
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种云环境下基于数据聚类的弹性资源供应方法和装置,其中,方法包括:根据聚类模型对下一时刻每个类簇的任务数量进行预测;按照预测结果为所述下一时刻的任务提供资源,能够对即将达到系统的任务进行预测,并根据预测结果对资源进行弹性供应,有效提高任务达到后的处理速度,节约资源。
Description
技术领域
本发明涉及云环境资源调度技术领域,尤其涉及一种云环境下基于数据聚类的弹性资源供应方法和装置。
背景技术
云计算是一种面向服务的商业计算模式,它能够通过互联网为客户按需提供动态的、可拓展的以及廉价的计算服务,主要目的是通过强大的云处理能力来减轻用户终端的负担。云计算融合了多种实用技术,如分布式计算、并行计算、网络存储和实用计算等。目前,云平台是一个通过大量云数据中心提供支持的国家关键性战略的基础设施。如何对云计算资源进行快速、有效的利用,是当下亟待解决的问题。
发明内容
本发明的目的是提供一种云环境下基于数据聚类的弹性资源供应方法,能够对即将达到系统的任务进行预测,并根据预测结果对资源进行弹性供应,有效提高任务达到后的处理速度,节约资源。
为解决上述问题,本发明的第一方面提供了一种云环境下基于数据聚类的弹性资源供应方法,包括:根据聚类模型对下一时刻每个类簇的任务数量进行预测;按照预测结果为所述下一时刻的任务提供资源。
进一步地,所述根据聚类模型对下一时刻每个类簇的任务数量进行预测之前,还包括:获取当前时刻接收到的任务;对所述任务进行至少一次的模糊C均值聚类计算,得到至少一个隶属度矩阵;其中,所述隶属度矩阵的维度与所述类簇的个数和聚类次数相关。
进一步地,在所述得到至少一个隶属度矩阵之后,还包括:根据所述隶属度矩阵,获取每个所述任务的隶属度和类信息根据每个所述任务的隶属度和类信息以及距离矩阵,通过密度峰值算法,确定聚合聚类中心,并对所述任务进行聚类划分,得到每个类簇。
进一步地,所述根据聚类模型对下一时刻每个类簇的任务数量进行预测,还包括:通过自回归滑动平均模型,预测所述下一时刻分配给每个类簇的任务数量。
进一步地,所述按照预测结果为所述下一时刻的任务提供资源,还包括:所述提供的资源保证在任务的截止时间前的任务保证率为最大值、系统资源利用率为最大值以及所述系统的总能耗为最小值。
进一步地,所述按照预测结果为所述下一时刻的任务提供资源,还包括:当所述资源不足时,控制开启新的虚拟机和/或主机。
进一步地,还包括:当所述资源闲置时,控制关闭空闲虚拟机和/或主机。
根据本发明的另一个方面提出一种云环境下基于数据聚类的弹性资源供应装置,包括:预测模块,用于根据聚类模型对下一时刻每个类簇的任务数量进行预测;控制模块,用于按照预测结果为所述下一时刻的任务提供资源。
根据本发明的又一方面提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现所述的云环境下基于数据聚类的弹性资源供应方法。
本发明的上述技术方案具有如下有益的技术效果:
1)提出了一种集成方法来减少单一聚类算法的差异,从而更好地避免任务聚类的不确定性。
2)为每个类簇在下一时刻的任务提供了一个有效的预测机制。其中,由于各个类簇内的任务具有很高的相似性,这表明它们的资源需求在本质上是相似的。为每个类簇提供一组性能相似的资源可以避免资源短缺或减少资源浪费。
3)根据预测集群中任务的数量,动态地开启或关闭物理资源和虚拟资源,实现节能调度方案,从而降低系统能耗,提高资源利用率。
附图说明
图1为本发明一个具体实施例的原理示意图;
图2为本发明另一个具体实施例的类簇划分的原理图;
图3为本发明实施例的云环境下基于数据聚类的弹性资源供应方法的流程图;
图4为本发明一个实施例的云环境下基于数据聚类的弹性资源供应方法的流程图;
图5为本发明另一个实施例的云环境下基于数据聚类的弹性资源供应方法的流程图;
图6为本发明实施例的云环境下基于数据聚类的弹性资源供应装置的方框示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
在附图中示出了根据本发明实施例的层结构示意图。这些图并非是按比例绘制的,其中为了清楚的目的,放大了某些细节,并且可能省略了某些细节。图中所示出的各种区域、层的形状以及它们之间的相对大小、位置关系仅是示例性的,实际中可能由于制造公差或技术限制而有所偏差,并且本领域技术人员根据实际所需可以另外设计具有不同形状、大小、相对位置的区域/层。
显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
以下将参照附图更详细地描述本发明。在各个附图中,相同的元件采用类似的附图标记来表示。为了清楚起见,附图中的各个部分没有按比例绘制。
在下文中描述了本发明的许多特定的细节,例如器件的结构、材料、尺寸、处理工艺和技术,以便更清楚地理解本发明。但正如本领域的技术人员能够理解的那样,可以不按照这些特定的细节来实现本发明。除非在下文中特别指出,半导体器件中的各个部分可以由本领域的技术人员公知的材料构成。
云计算是一种面向服务的商业计算模式,它能够通过互联网为客户按需提供动态的、可拓展的以及廉价的计算服务,主要目的是通过强大的云处理能力来减轻用户终端的负担。云计算融合了多种实用技术,如分布式计算、并行计算、网络存储和实用计算等。目前,云平台是一个通过大量云数据中心提供支持的国家关键性战略的基础设施。
云计算具有以下优势:(1)基于虚拟化的技术能够快速访问服务,并且云计算允许用户可在任何地方使用各种类型的终端;(2)云提供了庞大的资源池,从很大程度上减轻了用户终端的处理负担;(3)用户在使用云时不需要精通专业的IT知识。正式由于这些特性,云计算成为目前最具实用价值的科学研究之一。到目前为止,无论是大型IT企业(如Amazon(亚马逊)、Google(谷歌))还是不同领域的科学研究,通常使用的应用程序都被构建成工作流的形式。工作流由一系列具有数据相关性的任务组成,其大小与所涉及的任务数量和任务所需的资源密切相关。作为一个新兴产业,云计算已经成为一个应对规模庞大的应用的高效平台,许多研究报告均证明了云计算在性能和成本方面表现出优越的性能。
在云平台中,需要为工作流配置高性能的计算环境,并且为了保证合理的时间内完成工作流中的任务,通常需要将任务分配给多个计算节点。云环境中有两类参与者:服务提供者和用户。云供应商拥有大量资源,并将这些资源分配给向云平台提交需求的客户机。一般来说,这些资源由网络、存储、应用软件以及可快速提供的服务组成,客户与服务提供商的交互很少,而是直接使用平台中的资源。从用户的角度来看,由于资源通过互联网以“按需付费”的成本模式向用户提供了一个可配置的虚拟资源池,因此资源被认为是无限可扩展的。但为了保障双方的利益,供应商和用户之间的关系也面临一些问题。服务提供商寻求最大限度地利用资源,他们希望每种资源都被激活,这样能够尽可能地减少浪费。然而,当工作负载激增时会存在负载相互干扰的可能性,这往往导致了不可预测的问题,面对这种情况时服务商必须关闭这些资源,拒绝用户的需求以提高服务质量。另一方面,考虑到用户的期望,他们的主要目的是以最低的成本完成尽可能多的任务。但是他们对云环境中资源的配置结构、数量和性能有着截然不同的理解,他们认为资源是无限的,因此这些提交的工作流可能与平台中现有资源不一致,导致一些任务不能被及时的完成。基于这些原因,实现最佳资源配置是最大限度地提高服务提供商和用户利益的有效途径。尽管很多研究人员致力于此项研究,并设计出了优秀的解决方案来满足供应商和用户需求,但现阶段仍然面临两个挑战。
其一,由于云计算成本低、效率高,近年来使用云平台的用户数量不断增加。由于不同的用户有不同的偏好和需求,用户提交的任务类型和数量也在增加。面对这种情况,如果云平台不能合理地将不同类型的任务在某个时间节点上分配给现有资源,往往会导致任务不能被按时完成,甚至有些任务会被系统拒绝,从而降低了资源利用率,增加了云服务成本。
其二,云计算采用虚拟化技术来匹配任务和资源,具有良好的可扩展性。通常,系统中的每台主机都会承载多个具有不同性能的虚拟机(VM),由于部署的资源(主机和虚拟机)是异构的,因此,在云计算研究下如何快速地将用户提交的任务合理地分配给资源,最大限度地提高资源利用率和降低成本是至关重要的。当相邻时间节点的任务发生急剧波动(如急剧增加或快速下降)时,如果云资源不能及时重新配置,会出现资源不足或资源浪费的现象,将直接影响系统整体执行的稳定性和可靠性。
为了解决这些问题,本申请提出了一种云环境下基于数据聚类的弹性资源供应方法。图1中给出了本申请的工作原理。
在实际应用中,伴随服务需求类型的快速增长,需要寻找一种有效的数据分析方法来解决任务类型多样的问题。针对此问题,本申请提出了一种新的聚类集成方法作为任务分类器,以根据任务的属性将其划分为若干个类簇,且每个类簇内任务样本间具有较高的相似性。
由于不同类簇中任务的相似性较高,能够基于这种情况为这组任务提供统一类型的资源集合。但如果将资源一次分配给这些任务,当任务数量急剧增加时,一些任务由于队列中等待时间过长而导致无法在截止日期内完成,那么它们将被拒绝。本申请利用预测机制对每个类簇的任务数量进行预测,当下一时刻出现任务激增时能够提前为这些任务启动一些资源,避免出现资源不足的现象。然后,通过资源监控器将现有资源信息传输到任务池。此外,本申请还提出了一种新的调度策略,以节能为目的将任务额分配给资源。
在相互独立的任务集T={t1,t2,…tT}中,每个道道的任务ti均有三个主要属性,到达时间ai、计算长度(MHz)li以及截止时间di,即任务可表示为ti={ai,li,di}。
假设H={h1,h2,...,hH}表示具有不同处理能力的物理主机集合,每一台主机hj都由三部分组成:CPU性能、内存大小mj、虚拟机集合Vj。其中,虚拟机集合Vj={vmj,1,vmj,2,...,vmj,k},k为第j台主机hj中所包含的虚拟机个数,因此hj中第个k虚拟机可表示为vmj,k。与此同时,每个虚拟机vmj,k也同样包含CPU性能fj,k、内存大小mj,k,即vmj,k={fj,k,mj,k}。需要指出的是,在实际工作中,开启虚拟机的个数不是一成不变的,而是可以根据当时的工作负载动态创建或删除每台主机上的虚拟机。由于虚拟机的处理能力存在异构性,令sti,j,k,eti,j,k,fti,j,k分别表示任务ti的开始时间、执行时间以及完成时间。在三个变量之间具有如下关系:
fti,j,k=sti,j,k+eti,j,k
eti,j,k=li/fj,k
其中,sj表示空闲主机的能耗部分,表示主机hj在活动状态下被充分利用时的最大能耗。为一个二进制变量当时,表示当前主机hj处于活跃状态,反之,则为空闲状态。因此,主机hj从启动sti,j,k到执行eti,j,k的总能耗可近似表示为:
相似地,系统的总能耗(TEC)可近似为:
在虚拟云数据中心中,一个时间戳内会同时达到许多不同属性的任务,而本申请选取最重要的三个属性(任务的到达时间、任务长度以及任务的截止时间)。由于任务的多样性,用户提交的任务达到系统时,它们对虚拟机和主机的CPU计算能力是不同的。同时,虽然需要调度到物理机的任务不同,但其中一些任务仍有相似之处。因此,为了方便任务调度和资源供应,本申请根据任务属性的相似性将其划分为多个类簇(对于一组到达的任务,它们通常没有任何标签,这是一个无监督的学习问题)提出一种改进的低复杂度聚类方法,即基于距离决策的模糊聚类集成模型。考虑到任务提交量大,若对所有时间戳的任务进行聚类不能满足任务处理的实时性要求,因此先对部分任务数据进行聚类训练,筛选出这些任务的类簇中心。对于剩余的任务,可以通过计算与类簇中心的相似最小距离,将其划分到相应的类簇中。
由于不同数据集的结构差异较大,单个聚类算法只能在某些特定的数据集上获取理想的聚类结果,存在一定的局限性。为此,本申请引入聚类集成学习模型以更好地适应实时任务集。聚类集成的定义是通过计算多基聚类之间的结构相关性,并将这些聚类结果进行整合,得到一个集成式鲁棒聚类结果,从而提高聚类的准确性。本申请选择模糊C均值(Fuzzy C-Means,FCM)作为集成模型的基聚类算法。该算法计算简单,几何意义清晰,在数据聚类中得到了广泛的应用。但FCM受初始聚类中心的选择限制,不同的初始聚类中心对算法的每一次操作都会产生不同的聚类结果,因此构造有效的集成模型可以较好的利用这一缺点,保证集成的多样性。具体细节如下:
首先,本申请将集成模型的隶属度矩阵被定义为:
U=[U1,U2,…,UM](n×C)×M
随机选取初始聚类中心,通过M次反复运行FCM算法,得到相应的M个隶属度矩阵UM,U为(n×C)×M维矩阵,n为任务个数,C为聚类个数。为了得到最终的聚类结果,本申请通过建立一个距离矩阵来分析整合隶属度矩阵U。对于每个隶属度矩阵Um(m=1,2,...,M),计算对应的最大隶属类信息矩阵,即:
其中,表示最大隶属度所在的类编号,C为聚类数,对应隶属度矩阵可得到信息矩阵L=[L1,L2,...LM]。下面以单个隶属度矩阵Um与信息矩阵Lm为例进行距离矩阵的构建。任取两个任务xa、xb,它们相应的隶属度和类信息分别为
按照上述方式集成全部隶属度矩阵,得到累积隶属相似矩阵U′,即本申请引入目密度值(Density Peaks,DP)算法来整合基聚类的结果,而该算法的核心是如何构建有效的距离矩阵D作为输入来确定集合聚类中心。
其中,集成模型的距离矩阵D被定义为:
D=m×I-U′
其中,D表示累积距离矩阵,I为全1矩阵。累积距离矩阵不仅保证了集成模型的全面性,而且通过联合概率分布计算距离,保证了模型的准确性。
在DP算法中,对于每个任务ti,将累积距离矩阵D作为输入数据,计算出局部密度ρi与该数据样本更高密度样本点的距离δi。ρi与δi的计算公式为:
其中,dc(dc>0)表示截断距离,需用户事先指定。为数据集的指标集,具体表示为:
最后,再利用下面公式中的选择前个密度峰值点作为集成聚类中心,将其余的数据样本划分到相应类簇中,计算聚类的边界区域,排除光晕点的干扰,从而确定最终的聚类集成结果。
γi=ρi×δi,i-1,2,...,n
需要指出的是,通过比例系数rc确定截断距离dc,将rc的范围限定在1%-2%区间内,本申请设定rc为2%。
对于到达的任务运行M次FCM基聚类算法可以得到相应的M个隶属度矩阵,并通过前述距离矩阵的公式得到距离矩阵。然后将距离矩阵作为DP模型的输入,得到C类簇,具体来说,DP模型部分是由局部密度ρi(左侧)和距离δi绘制的集群中心决策图,其中图中的点代表类簇中心。右侧是将剩余任务点划分到每个类簇中心的距离图(其中,以图2中C=4为例进行说明)。
具体地,前述过程可通过以下过程实现;
进一步地,云计算的能耗是在满足用户QoS的约束下急需解决的问题。除了在云环境中运行任务所用资源的能耗外,当活动主机空闲时,以及部署新主机和虚拟机时也会产生相应的能耗。此外,当任务到达系统并准备好调度到合适的虚拟机时,如果没有已完成上一个任务的虚拟机,或者现有寻积极的CPU性能不足以运行该任务,则会向系统添加其他虚拟机,由于打开虚拟机和主机需要一定的时间,这将增加任务的等待时间。针对这些问题,本申请采用一种基于时间序列的预测方法,是通过对历史数据进行相关统计来分析和估计未来数据趋势的重要工具。在预测过程中,本申请选择自回归滑动平均(AutoRegressiveIntegrated Moving Average,ARIMA)模型,其能够预测分配给每个类簇的任务数量,从而根据预测结果动态地启动和取消虚拟机,从而提高任务的执行效率,降低系统的能耗。
一般情况下,大多数自回归模型都要求时间序列是平稳的,但如果时间序列是非平稳的任务流,那么模型将无法完成预测,而ARIMA(Autoregressive Integrated MovingAverage Model,自回归积分滑动平均模型)模型是一种改进算法,对于不平均数据流,通过差分的方式达到相对平稳下的状态,ARIMA是一个从历史数据学习到时间变化的模型,因此能够预测未来数据的变化趋势,该模型可以描述为:
其中,p为自回归项个数,q为移动平均项个数,d是差异项个数,La为滞后因子。最优参数p、q通过计算自相关函数(Auto Correlation Function,ACF)和部分自相关函数(Partial Auto Correlation Function,PACF)得到。对于每个类簇,本申请都采用该模型预测下一次到达的任务数量。ARIMA模型的实现过程具体如下:
进一步地,在调度算法中,当任务到达系统时,本申请首先利用前述提出的聚类方法将任务划分为C个类簇中。然后在保证任务的完成率的前提下,将这些任务以节省能源消耗、减少系统运行时间为目的分配到现有的资源上。
其中,本申请首先能够实现在任务的截止时间前最大化任务保证率(GuaranteeRatio,GR):
其中,xi,j,k为状态变量,若xi,j,k=1,则表示任务ti匹配到虚拟机vmj,k上,且fti,j,k小于di。否则,xi,j,k=0。
与此同时,本申请还能够保证系统需要的最大化资源利用率(ResourceUtilization,RU)
其中,wtj表示Host主机hj的活跃时间,考虑到虚拟机和Host主机的CPU功率和内存的差异性,设置如下的调度约束条件:
以及最小化系统的总能耗:
基于上述分析,调度算法的实现,可通过如下程序实现:
其中,TQC表示第C个类簇的任务队列,findVM表示用于判断任务执行的二进制变量。
由于预测结果与实际结果之间可能会存在一些差距,当实际达到的任务数超过了预测数量时,系统资源需要重新进行配置,当配置资源不足时,部分任务将由于超过截止时间而被拒绝。因此,这种情况下需要添加虚拟资源甚至物理资源来保证任务完成率。在开启资源过程中,本申请将能耗作为衡量指标,选择CPU频率最低且能在任务截止时间内完成任务的虚拟机。函数AddVM()用于开启新的虚拟机,具体程序如下:
函数TurnOffVM()用于动态删除虚拟机和关闭空闲物理主机,具体程序如下:
当系统中的工作负载达到峰值时,所需的活动资源数量也达到最大,随着工作负载逐渐减少,若工作负载没有明显的上升趋势,一些资源将暂时闲置,甚至长时间闲置。若这些闲置资源始终保持开启状态,会给系统带来能源消耗,因此需要适当关闭一些资源,本申请通过设置空闲阈值来确定虚拟机的状态。若vmj,k的空闲时间大于阈值时,关闭虚拟机vmj,k并从主机hj中移除它。而对于主机hj,若主机上的所有虚拟机都已关闭,则关闭此主机。
其中,本申请中涉及的参数具有如下定义:
下面结合附图来说明本发明提出的云环境下基于数据聚类的弹性资源供应方法和装置。
图3为本发明实施例的云环境下基于数据聚类的弹性资源供应方法的流程图。如图3所示,本发明实施例的云环境下基于数据聚类的弹性资源供应方法,包括以下步骤:
S101:根据聚类模型对下一时刻每个类簇的任务数量进行预测。
S102:按照预测结果为下一时刻的任务提供资源。
进一步地,如图4所示,根据聚类模型对下一时刻每个类簇的任务数量进行预测之前,还包括:
S201:获取当前时刻接收到的任务。
S202:对任务进行至少一次的模糊C均值聚类计算,得到至少一个隶属度矩阵。
其中,隶属度矩阵的维度与类簇的个数和聚类次数相关。
进一步地,如图5所示,在得到至少一个隶属度矩阵之后,还包括:
S301:根据隶属度矩阵,获取每个任务的隶属度和类信息。
S302:根据每个任务的隶属度和类信息以及距离矩阵,通过密度峰值算法,确定聚合聚类中心,并对任务进行聚类划分,得到每个类簇。
进一步地,根据聚类模型对下一时刻每个类簇的任务数量进行预测,还包括:通过自回归滑动平均模型,预测下一时刻分配给每个类簇的任务数量。
进一步地,按照预测结果为下一时刻的任务提供资源,还包括:提供的资源保证在任务的截止时间前的任务保证率为最大值、系统资源利用率为最大值以及系统的总能耗为最小值。
进一步地,按照预测结果为下一时刻的任务提供资源,还包括:当资源不足时,控制开启新的虚拟机和/或主机。
应当理解的是,当资源闲置时,控制关闭空闲虚拟机和/或主机。
为了达到上述目的,本发明还提出了一种云环境下基于数据聚类的弹性资源供应装置。
图6为本发明实施例的云环境下基于数据聚类的弹性资源供应装置的方框示意图。如图6所示,本发明实施例的云环境下基于数据聚类的弹性资源供应装置100,包括:预测模块10和控制模块20。
其中,预测模块10用于根据聚类模型对下一时刻每个类簇的任务数量进行预测;控制模块20用于按照预测结果为下一时刻的任务提供资源。
进一步地,根据聚类模型对下一时刻每个类簇的任务数量进行预测之前,预测模块10还用于:获取当前时刻接收到的任务;对任务进行至少一次的模糊C均值聚类计算,得到至少一个隶属度矩阵;其中,隶属度矩阵的维度与类簇的个数和聚类次数相关。
进一步地,在得到至少一个隶属度矩阵之后,预测模块10还用于:根据隶属度矩阵,获取每个任务的隶属度和类信息根据每个任务的隶属度和类信息以及距离矩阵,通过密度峰值算法,确定聚合聚类中心,并对任务进行聚类划分,得到每个类簇。
进一步地,预测模块10还用于:通过自回归滑动平均模型,预测下一时刻分配给每个类簇的任务数量。
进一步地,控制模块20还用于:提供的资源保证在任务的截止时间前的任务保证率为最大值、系统资源利用率为最大值以及系统的总能耗为最小值。
进一步地,控制模块20还用于:当资源不足时,控制开启新的虚拟机和/或主机。
进一步地,控制模块20还用于:当资源闲置时,控制关闭空闲虚拟机和/或主机。
应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。
在以上的描述中,对于各层的构图、刻蚀等技术细节并没有做出详细的说明。但是本领域技术人员应当理解,可以通过现有技术中的各种手段,来形成所需形状的层、区域等。另外,为了形成同一结构,本领域技术人员还可以设计出与以上描述的方法并不完全相同的方法。
以上参照本发明的实施例对本发明予以了说明。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本发明的范围。本发明的范围由所附权利要求及其等价物限定。不脱离本发明的范围,本领域技术人员可以做出多种替换和修改,这些替换和修改都应落在本发明的范围之内。
尽管已经详细描述了本发明的实施方式,但是应该理解的是,在不偏离本发明的精神和范围的情况下,可以对本发明的实施方式做出各种改变、替换和变更。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
Claims (7)
1.一种云环境下基于数据聚类的弹性资源供应方法,其特征在于,包括:
根据聚类模型对下一时刻每个类簇的任务数量进行预测;
按照预测结果为所述下一时刻的任务提供资源;
所述按照预测结果为所述下一时刻的任务提供资源,还包括:
所述提供的资源保证在任务的截止时间前的任务保证率为最大值、系统资源利用率为最大值以及所述系统的总能耗为最小值;
其中,T为相互独立的任务集T={t1,t2,…tT},H为具有不同处理能力的物理主机集合H={h1,h2,...,hH},V为虚拟机集合Vj={vmj,1,vmj,2,...,vmj,k},i为第i个任务ti,j为第j台主机,k为第j台主机中所包含的虚拟机个数,而mj,k为第k个虚拟机的内存需求,Ta为任务集T的任务个数,xi,j,k为状态变量,若xi,j,k=1,则表示任务ti匹配到虚拟机vmj,k上,且fti,j,k小于di,否则,xi,j,k=0;
其中,TEC为系统总能耗。
2.根据权利要求1所述的云环境下基于数据聚类的弹性资源供应方法,其特征在于,所述根据聚类模型对下一时刻每个类簇的任务数量进行预测之前,还包括:
获取当前时刻接收到的任务;
对所述任务进行至少一次的模糊C均值聚类计算,得到至少一个隶属度矩阵;
其中,所述隶属度矩阵的维度与所述类簇的个数和聚类次数相关。
3.根据权利要求2所述的云环境下基于数据聚类的弹性资源供应方法,其特征在于,在所述得到至少一个隶属度矩阵之后,还包括:
根据所述隶属度矩阵,获取每个所述任务的隶属度和类信息;
根据每个所述任务的隶属度和类信息以及距离矩阵,通过密度峰值算法,确定聚合聚类中心,并对所述任务进行聚类划分,得到每个类簇。
4.根据权利要求1所述的云环境下基于数据聚类的弹性资源供应方法,其特征在于,所述根据聚类模型对下一时刻每个类簇的任务数量进行预测,还包括:
通过自回归滑动平均模型,预测所述下一时刻分配给每个类簇的任务数量。
5.根据权利要求1所述的云环境下基于数据聚类的弹性资源供应方法,其特征在于,所述按照预测结果为所述下一时刻的任务提供资源,还包括:
当所述资源不足时,控制开启新的虚拟机和/或主机。
6.根据权利要求5所述的云环境下基于数据聚类的弹性资源供应方法,其特征在于,还包括:
当所述资源闲置时,控制关闭空闲虚拟机和/或主机。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6 中任一所述的云环境下基于数据聚类的弹性资源供应方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910816112.7A CN110519386B (zh) | 2019-08-30 | 2019-08-30 | 云环境下基于数据聚类的弹性资源供应方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910816112.7A CN110519386B (zh) | 2019-08-30 | 2019-08-30 | 云环境下基于数据聚类的弹性资源供应方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110519386A CN110519386A (zh) | 2019-11-29 |
CN110519386B true CN110519386B (zh) | 2022-04-19 |
Family
ID=68629626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910816112.7A Active CN110519386B (zh) | 2019-08-30 | 2019-08-30 | 云环境下基于数据聚类的弹性资源供应方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110519386B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111737190B (zh) * | 2020-07-03 | 2022-10-21 | 北京智芯微电子科技有限公司 | 嵌入式系统的动态软硬件协同方法、嵌入式系统 |
CN112506652B (zh) * | 2020-12-01 | 2023-10-20 | 中国科学院深圳先进技术研究院 | 一种动态资源分区方法 |
CN114896296B (zh) * | 2022-02-24 | 2023-08-11 | 浙江华通云数据科技有限公司 | 云服务资源配置方法、装置、电子设备及计算机可读介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103220337A (zh) * | 2013-03-22 | 2013-07-24 | 合肥工业大学 | 基于自适应弹性控制的云计算资源优化配置方法 |
CN108984301A (zh) * | 2018-07-04 | 2018-12-11 | 中国人民解放军国防科技大学 | 自适应云资源调配方法和装置 |
CN109005130A (zh) * | 2018-07-04 | 2018-12-14 | 中国人民解放军国防科技大学 | 网络资源配置调度方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9817690B2 (en) * | 2015-09-11 | 2017-11-14 | International Business Machines Corporation | Predictively provisioning cloud computing resources for virtual machines |
-
2019
- 2019-08-30 CN CN201910816112.7A patent/CN110519386B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103220337A (zh) * | 2013-03-22 | 2013-07-24 | 合肥工业大学 | 基于自适应弹性控制的云计算资源优化配置方法 |
CN108984301A (zh) * | 2018-07-04 | 2018-12-11 | 中国人民解放军国防科技大学 | 自适应云资源调配方法和装置 |
CN109005130A (zh) * | 2018-07-04 | 2018-12-14 | 中国人民解放军国防科技大学 | 网络资源配置调度方法和装置 |
Non-Patent Citations (1)
Title |
---|
距离决策下的模糊聚类集成模型;费博雯;《电子与信息学报》;20180831(第8期);第1895-1903页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110519386A (zh) | 2019-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110096349B (zh) | 一种基于集群节点负载状态预测的作业调度方法 | |
Kumar et al. | Deadline constrained based dynamic load balancing algorithm with elasticity in cloud environment | |
Mekala et al. | Energy-efficient virtual machine selection based on resource ranking and utilization factor approach in cloud computing for IoT | |
CN111431961B (zh) | 一种云数据中心的节能任务分配方法 | |
CN110519386B (zh) | 云环境下基于数据聚类的弹性资源供应方法和装置 | |
Mansouri et al. | Cost-based job scheduling strategy in cloud computing environments | |
CN106020927B (zh) | 一种云计算系统中任务调度与资源配置的通用方法 | |
CN103338241B (zh) | 一种新的公有云架构及其虚拟化资源自适应配置方法 | |
CN103220337A (zh) | 基于自适应弹性控制的云计算资源优化配置方法 | |
CN103701886A (zh) | 一种云计算环境下的服务及资源分层调度方法 | |
CN114816715B (zh) | 一种面向跨地域的流计算延迟优化方法及装置 | |
Mostafavi et al. | A stochastic approximation approach for foresighted task scheduling in cloud computing | |
Rugwiro et al. | Task scheduling and resource allocation based on ant-colony optimization and deep reinforcement learning | |
Lu et al. | Dynamic offloading for energy-aware scheduling in a mobile cloud | |
Zhang et al. | Online dispatching and scheduling of jobs with heterogeneous utilities in edge computing | |
CN114579270A (zh) | 一种基于资源需求预测的任务调度方法及系统 | |
CN111309472A (zh) | 一种基于虚拟机预部署的在线虚拟资源分配方法 | |
CN104598311A (zh) | 一种面向Hadoop的实时作业公平调度的方法和装置 | |
Barlaskar et al. | Energy-efficient virtual machine placement using enhanced firefly algorithm | |
Huang et al. | Computation offloading for multimedia workflows with deadline constraints in cloudlet-based mobile cloud | |
US20240004707A1 (en) | Methods and systems for energy-efficient scheduling of periodic tasks on a group of processing devices | |
Hou et al. | Dynamic load balancing algorithm based on optimal matching of weighted bipartite graph | |
Surya et al. | Novel Approaches for Resource Management Across Edge Servers | |
Zhou et al. | Stability property of clouds and cooperative scheduling policies on multiple types of resources in cloud computing | |
CN110308991A (zh) | 一种基于随机任务的数据中心节能优化方法及系统 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |