CN104168318B - 一种资源服务系统及其资源分配方法 - Google Patents

一种资源服务系统及其资源分配方法 Download PDF

Info

Publication number
CN104168318B
CN104168318B CN201410406388.5A CN201410406388A CN104168318B CN 104168318 B CN104168318 B CN 104168318B CN 201410406388 A CN201410406388 A CN 201410406388A CN 104168318 B CN104168318 B CN 104168318B
Authority
CN
China
Prior art keywords
mrow
task
msubsup
msub
tau
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
Application number
CN201410406388.5A
Other languages
English (en)
Other versions
CN104168318A (zh
Inventor
汤雅妃
张云勇
魏进武
张基恒
李卫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China United Network Communications Group Co Ltd
Original Assignee
China United Network Communications Group Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China United Network Communications Group Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN201410406388.5A priority Critical patent/CN104168318B/zh
Publication of CN104168318A publication Critical patent/CN104168318A/zh
Application granted granted Critical
Publication of CN104168318B publication Critical patent/CN104168318B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Medicines That Contain Protein Lipid Enzymes And Other Medicines (AREA)

Abstract

本发明提供了一种资源分配方法及系统;方法包括:在每个资源分配周期开始的时刻,对于排队的M个任务,根据资源部署数据生成任务的各属性数据的初始权重系数;对所述M个任务根据属性数据进行聚类,将所述M个任务划分为多个组;分别对于各组利用熵值法对所述各属性数据的初始权重系数组成的初始权重系数向量进行调整,得到各组的权重系数向量;根据各任务所属组的权重系数向量和该任务的属性数据,分别计算各任务的优先级分值,按照优先级分值从高到低的顺序对各任务进行资源分配。本发明能提高资源利用率。

Description

一种资源服务系统及其资源分配方法
技术领域
本发明涉及云计算领域,尤其涉及一种资源服务系统及其资源分配方法。
背景技术
IaaS(Infrastructure-as-a-Service,基础设施即服务)平台是当前云计算平台最重要的一种表现形式,允许用户通过云服务的形式获得计算资源,并提供灵活的资源共享和按需分配。以面向用户提供虚拟机资源、物理机资源以及存储资源为主要服务模式。其核心目标是能够及时响应用户定制需求,提供对应操作系统类型、CPU频率、核心数、带宽量、内存空间、硬盘空间的虚拟资源。
IaaS云平台资源服务系统提供的服务是虚拟资源,主要考虑的是优化资源供给和虚拟机的创建问题。因此IaaS层服务的主要约束是云平台中的资源总量,服务目标是确保有限的资源能够服务于尽量多的用户需求。现有技术中IaaS平台的服务调度机制包括请求的排队策略与请求和服务副本之间匹配策略。在排队策略中主要遵循先入先出的公平排队原则,即先到达的事件先提供服务,以提高服务的响应时间,优化服务的执行效率;对于服务副本的匹配策略而言,主要是根据服务约束条件进行建模,生成约束条件的匹配策略,实现服务副本的负载均衡,从而对云服务资源进行弹性分配,避免资源的过量和欠量分配。
但是随着云规模的增大,资源管理的复杂度也在不断提高,这就给传统的资源服务机制带来了挑战。
首先,在现有资源服务系统中,服务顺序并未受到平台中资源总量的约束,将资源分配难题全部交由服务副本的匹配策略进行协调,因此尚未很好地将请求的排队与服务副本的匹配机制相结合,不能真正做到优化稳态调度时云服务的整体性能。
其次,考虑到整个IaaS云平台的资源总量是有限的,先入先出的排队方式强调了服务公平性的同时却忽略了用户对服务资源的竞争性。随着用户数量的快速增长、特别是在业务高峰期有限的服务资源越发紧缺,一味地强调公平性既不能真正满足用户的共同利益,更会造成资源的浪费和不合理分配。
以带宽资源为例,当带宽资源相对紧缺时,如果排在服务队列前面的任务所需带宽资源量较大,按照先入先出的分配原则满足了其带宽需求,便会加重当前带宽资源负担,使得云平台中带宽资源更为紧缺,资源的总体分布更加不平衡,同时后面的业务也将得不到服务保障。以此同时,近年来随着SLA服务等级协议的提出,IaaS云平台需要向用户提供差异化服务,应当保证部分业务享有优先服务的权利。然而在现有服务系统中仅仅根据SLA服务约束条件进行资源分配,忽略了现有系统的资源状况以及用户对服务资源的竞争性,也会造成资源的浪费和不合理分配。
发明内容
本发明要解决的技术问题是提供一种动态调整的资源服务分配方案,能提高资源利用率。
为了解决上述问题,本发明提供了一种资源分配方法,应用于基础设施即服务云平台中,包括:
S101、在每个资源分配周期开始的时刻,对于排队的M个任务,根据资源部署数据生成任务的各属性数据的初始权重系数;M为大于1的整数;任务的所述属性数据包括该任务的用户服务等级、已等待时长、及各资源需求量;所述资源部署数据包括各类资源的资源占用率以及平均资源释放率;
S102、对所述M个任务根据属性数据进行聚类,将所述M个任务划分为多个组;
S103、分别对于各组利用熵值法对所述各属性数据的初始权重系数组成的初始权重系数向量进行调整,得到各组的权重系数向量;
S104、根据各任务所属组的权重系数向量和该任务的属性数据,分别计算各任务的优先级分值,按照优先级分值从高到低的顺序对各任务进行资源分配。
可选地,所述初始权重系数包括用户服务等级的权重系数a1、已等待时长的权重系数a2、及各资源需求量之和的权重系数γ;
a1、a2、γ之和为1,且a1、a2、γ均属于闭区间[0,1];
所述资源需求量包括CPU核心数、主频、内存、硬盘、带宽大小的需求量及资源占用时间;
所述资源需求量之和为各类资源需求量乘以该类资源需求量对应的相对权重bσ后相加的结果;各类资源需求量的相对权重bσ之和为1,各相对权重bσ均属于闭区间[0,1];
资源需求量的相对权重为:
ηC、ηF、ηD、ηM、ηB分别为CPU核心数、主频、内存、硬盘、带宽大小的资源占用率;ηT为平均资源释放率;σ分别取为C、F、D、M、B、T。
可选地,所述步骤S102包括:
21、判断所述M个任务中每两个任务关于阈值向量ψ是否相似,将相似点划分为一个子集,生成该次迭代的聚类方案CK和聚类数K;
22、根据方案CK,计算该次聚类的有效性指标Q(CK);
23、阈值向量ψ以步长θ进行递增,将ψ=ψ+θ返回步骤21中进行循环,直到ψ增长到所有任务被划分到同一个集合中,即迭代生成的聚类数K=1时,迭代停止,进行步骤24;
24、比较每次迭代的所述有效性指标,确定满足目标函数的最优聚类数K*和最优划分C*;根据最优划分将所述M个任务划分为K*个组。
可选地,所述步骤S103包括:
31、计算第τ组任务的属性数据向量矩阵中的元素在属性数据j下的发生概率其中τ的取值为1到K*的每个整数:
32、经归一化处理计算属性数据j的熵值:
33、计算属性数据j的熵权:
34、利用熵权调整第τ组任务的初始权重系数向量Wτ′,得到属性数据j的权重系数wτ,j
其中wτ,j′(j=1,2,...,N)是第τ组任务初始权重系数向量Wτ′对应的各属性数据的初始权重系数,a代表该组内的任务个数,N代表属性数据的个数,i为任务的序号,j为属性数据的序号;各属性数据的wτ,j(j=1,2,...,N)组成第τ组的权重系数向量。
可选地,所述步骤104中计算出的任一任务k的优先权分值fk为:
fk=Wτ·F(Xk)T,k∈Cτ
F(Xk)=(Sk,Hk,g(Ck),g(Fk),g(Dk),g(Mk),g(Bk),g(Tk))
s.t.g(x)=e-αx,α>0
Wτ=(wτ,1,wτ,2,...,wτ,N)为任务所属的组的权重系数向量;Sk为任务k的用户服务等级的函数表示,Hk为任务k的已等待时长的函数表示,Ck,Fk,Dk,Mk,Bk,Tk依次为任务k所需求CPU核心数、主频、内存、硬盘、带宽大小、资源占用时间,s.t.后为约束条件,g为预定的统一函数。
本发明还提供了一种资源分配系统,应用于基础设施即服务云平台中,包括:
初始化模块,用于在每个资源分配周期开始的时刻,对于排队的M个任务,根据资源部署数据生成任务的各属性数据的初始权重系数;M为大于1的整数;任务的所述属性数据包括该任务的用户服务等级、已等待时长、及各资源需求量;所述资源部署数据包括各类资源的资源占用率以及平均资源释放率;
分组模块,用于对所述M个任务根据属性数据进行聚类,将所述M个任务划分为多个组;
调整模块,用于分别对于各组利用熵值法对所述各属性数据的初始权重系数组成的初始权重系数向量进行调整,得到各组的权重系数向量;
分配模块,用于根据各任务所属组的权重系数向量和该任务的属性数据,分别计算各任务的优先级分值,按照优先级分值从高到低的顺序对各任务进行资源分配。
可选地,所述初始权重系数包括用户服务等级的权重系数a1、已等待时长的权重系数a2、及各资源需求量之和的权重系数γ;
a1、a2、γ之和为1,且a1、a2、γ均属于闭区间[0,1];
所述资源需求量包括CPU核心数、主频、内存、硬盘、带宽大小的需求量及资源占用时间;
所述资源需求量之和为各类资源需求量乘以该类资源需求量对应的相对权重bσ后相加的结果;各类资源需求量的相对权重bσ之和为1,各相对权重bσ均属于闭区间[0,1];
资源需求量的相对权重为:
ηC、ηF、ηD、ηM、ηB分别为CPU核心数、主频、内存、硬盘、带宽大小的资源占用率;ηT为平均资源释放率;σ分别取为C、F、D、M、B、T。
可选地,所述分组模块包括:
判断单元、计算单元、迭代单元、划分单元;
所述判断单元用于判断所述M个任务中每两个任务关于阈值向量ψ是否相似,将相似点划分为一个子集,生成该次迭代的聚类方案CK和聚类数K,交给所述计算单元;
所述计算单元用于根据方案CK,计算该次聚类的有效性指标Q(CK);
所述迭代单元用于将阈值向量ψ以步长θ进行递增,将ψ=ψ+θ发送给所述判断单元,直到ψ增长到所有任务被划分到同一个集合中,即迭代生成的聚类数K=1时,迭代停止,启动所述划分单元;
所述划分单元用于比较每次迭代的有效性指标,确定满足目标函数的最优聚类数K*和最优划分C*;根据最优划分将所述M个任务划分为K*个组。
可选地,所述调整模块包括:
概率计算单元,用于计算第τ组任务的属性数据向量矩阵中的元素在属性数据j下的发生概率其中τ的取值为1到K*的每个整数:
熵值计算单元,用于经归一化处理计算属性数据j的熵值:
熵权计算单元,用于计算属性数据j的熵权:
权重调整单元,用于利用熵权调整第τ组任务的初始权重系数向量Wτ′,得到属性数据j的权重系数wτ,j
其中wτ,j′(j=1,2,...,N)是第τ组任务初始权重系数向量Wτ′对应的各属性数据的初始权重系数,a代表该组内的任务个数,N代表属性数据的个数,i为任务的序号,j为属性数据的序号;各属性数据的wτ,j(j=1,2,...,N)组成第τ组的权重系数向量。
可选地,所述分配模块计算出的任一任务k的优先权分值fk为:
fk=Wτ·F(Xk)T,k∈Cτ
F(Xk)=(Sk,Hk,g(Ck),g(Fk),g(Dk),g(Mk),g(Bk),g(Tk))
s.t.g(x)=e-αx,α>0
Wτ=(wτ,1,wτ,2,...,wτ,N)为任务所属的第τ组的权重系数向量;Sk为任务k的用户服务等级的函数表示,Hk为任务k的已等待时长的函数表示,Ck,Fk,Dk,Mk,Bk,Tk依次为任务k所需求CPU核心数、主频、内存、硬盘、带宽大小、资源占用时间,s.t.后为约束条件,g为预定的统一函数。
本发明针对现有IaaS云平台资源服务系统中资源利用率低的问题,提出了一种动态自适应的资源服务系统及方法。通过动态生成的权重系数向量权衡服务优先级,可在一定程度上优先对紧缺资源需求量小的业务,将有助于维系云平台的资源稳态,使得有限资源服务于更多用户,提高资源利用率;另外还综合考虑了用户服务等级和已等待时长,既体现了排队请求任务对有限服务资源的竞争性又保证了资源调度的公平性,使得服务资源的分配更为合理和正确。
附图说明
图1是实施例一的资源分配方法的流程示意图;
图2是实施例二的资源分配系统的示意框图;
图3是实施例二的资源分配系统的工作示意图。
具体实施方式
下面将结合附图及实施例对本发明的技术方案进行更详细的说明。
需要说明的是,如果不冲突,本发明实施例以及实施例中的各个特征可以相互结合,均在本发明的保护范围之内。另外,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
IaaS云平台的资源服务过程实质上可以看作一个资源请求任务排队和接受服务的过程。本发明基于此考虑,为了提高资源利用率,尽可能满足更多用户的体验和资源需求,设计了一种基于动态权重分配的自适应服务排队方案,并据此进行资源分配。
本发明所要实现的目标是IaaS云平台能够基于现有资源部署情况,在不影响用户服务满意度的前提下,尽可能服务更多的资源申请。基于此,本发明充分考虑了任务对资源的这种竞争关系,根据动态生成的权重系数向量对任务的优先级进行综合评估。
假设t时刻排队等候区共有M个任务,并且对于每个任务都有N个属性数据,任务k的权重系数向量Wk=(wk,1,wk,2,...,wk,N),属性数据向量Xk=(xk,1,xk,2,...,xk,N),则任务k的优先权分值为fk=Wk·F(Xk)T。其中属性数据向量Xk包括从每条任务中获取的用户服务等级、已等待时长、资源需求量(包括CPU核心数、主频、内存、硬盘、带宽大小和资源占用时间等),F(Xk)是Xk的函数表示。
本发明的研究重点是如何结合现有资源部署情况和排队队列的服务请求信息,生成相应的权重系数向量Wk。既充分体现了排队的竞争性又确保竞争的公平性,同时反作用于调节云平台中资源分布,确保资源的有效合理利用。例如,当现有IaaS平台中带宽资源稀缺而内存资源富裕时,带宽权重将会适当提高,内存权重也会适当降低,其提高和降低的比例将随着所有排队任务的服务请求属性动态变化。随之排队队列中带宽需求量小、内存需求量大的业务将会被优先服务,其具体服务顺序也将受到所有排队任务的服务请求属性动态控制。从而可以在尽可能服务更多任务的同时不断使整个平台的带宽和内容资源趋于平衡状态;事实上IaaS平台最健康的状态就是各类资源都处于一种稳定平衡状态。
实施例一、一种资源分配方法,应用于IaaS云平台中,如图1所示,包括:
S101、在每个资源分配周期开始的时刻,对于排队的M个任务,根据资源部署数据生成任务的各属性数据的初始权重系数;M为大于1的整数;任务的所述属性数据包括该任务的用户服务等级、已等待时长、及各资源需求量;所述资源部署数据包括各类资源的资源占用率以及平均资源释放率;
S102、对所述M个任务根据属性数据进行聚类,将所述M个任务划分为多个组;
S103、分别对于各组利用熵值法对所述各属性数据的初始权重系数组成的初始权重系数向量进行调整,得到各组的权重系数向量;
S104、根据各任务所属组的权重系数向量和该任务的属性数据,分别计算各任务的优先级分值,按照优先级分值从高到低的顺序对各任务进行资源分配。
本实施例中,步骤101中,可针对云平台中相对紧缺的资源设置相对高的初始权重系数。步骤102中,每个组中资源申请的数量不一定相等,但各组中的资源申请却具有尽可能高的相似属性;步骤103可以使得分布不均匀程度大的属性数据的权重系数相对增加。步骤104中针对组内竞争由同一权重系数向量、组外竞争由不同的权重系数向量进行服务请求的价值评估,按照权重法计算各个任务优先级的综合评分值,并由高到低进行资源分配。
本实施例中,所述属性数据可以但不限于包括:用户服务等级、已等待时长、资源需求量(包括CPU核心数、主频、内存、硬盘、带宽大小和资源占用时间)等,任务的属性数据可以看作任务的优先级评价指标。
步骤101中,结合任务的属性数据和云平台中的资源部署数据进行初始权重系数的设置。
根据初始权重系数,任务i优先级分值fi如式1所示,由相应的属性数据根据权重系数加权求和确定:
fi=a1Si+a2Hi+γ[bCg(Ci)+bFg(Fi)+bDg(Di)+bMg(Mi)+bBg(Bi)+bTg(Ti)+...]
其中,s.t.后的内容为约束条件。a1、a2、γ均是经验权重系数,由主观经验或者通过其他系统学习方法获取,与平台的现有资源分布情况无关。
在fi的计算式中,等号右边第1项表示任务的优先程度和用户服务等级有关,a1表示用户服务等级的经验权重系数,Si是任务i对应的用户服务等级的函数表示,级别越高其享有的优先权越高。第2项表示任务优先程度和任务已等待时间有关,a2表示任务已等待时间的经验权重系数,Hi是任务i在队列中已等待时间的函数表示,等待时间越长的业务应该被优先服务。γ表示资源需求量的经验权重系数,第3项中的各个子项,表示服务请求的优先程度和任务的资源需求情况有关。在资源总量有限的情况下为了尽可能服务更多的任务,应当优先服务资源需求量小的任务,因此任务的优先级与其资源需求量负相关。
为了简化模型,考虑到负指数函数的连续、非负、单调递减性,针对所有资源采用预定的统一函数g(x)进行变换(这意味着某类资源需求量越高,其对应的g(x)值越小),并且通过预定的改变系数α可以控制资源需求量对任务优先级的影响趋势。g(x)=e-αx,α>0是负指数函数的形式。所以其单调递减。这边。其中Ci表示任务i需求的CPU核心数,Fi表示任务i需求的CPU频率、Di表示任务i需求的带宽量,Mi表示任务i需求的内存空间,Bi表示任务i需求的硬盘空间,Ti表示任务i的资源占用时间。以此类推,假设有φ类资源需求量,则这φ类资源需求量的相对权重bσ之和为1,各相对权重bσ均属于闭区间[0,1]。
关于相对权重bσ的获取,本实施例充分结合现有平台的资源部署数据,根据各类资源的占用情况进行相对权重的分配。首先,排队服务系统通过资源监控模块获取当前时刻各类资源(包括CPU核心数、主频、内存、硬盘、带宽大小)在IaaS云平台上的资源占用率以及平均资源释放率。其中资源占用率代表了当前IaaS云平台上资源的使用情况,本实施例中采用当前时刻所有正在进行的云服务任务的资源占用总量除以平台资源总量得到。以内存占用率为例,平台总内存大小为Q,当前已占用内存为q,则剩余可用内存为Q减去q,当前时刻内存占用率η内存=q/Q。平均资源释放率设为η释放=T剩余/TMAX,代表了当前IaaS云平台上资源的使用效率。其中T剩余表示当前时刻所有正在进行的云服务距离任务完成的平均剩余时间,Tmax为系统设定的最大资源占用时长,即规定对于资源时长占用超过Tmax的用户请求将由其它渠道进行特殊处理,不在本实施例考虑范围内。
接下来对获取的资源部署数据进行归一化处理,从而生成相对权重bσ。在此式1中列出的资源需求量为例,认为Ci、Fi、Di、Mi、Bi的相对权重由相应资源在Iaas平台上的资源占用率(分别记作ηC、ηF、ηD、ηM、ηB)决定;Ti的相对权重由平均资源释放率决定,记作ηT。则相对权重bσ由式2生成:
即由某一类资源占用率在所有资源占用率之和的相对大小决定相应资源需求量的相对权重。以内存资源为例,当内存占用率相对较高时表明在现有平台上内存资源相对紧缺,那么在考虑优先级时应当更加看重服务请求对内存的资源需求量,所以配置的内存的资源需求量的相对权重应当相对更大些。
σ在式2中分别取为C、F、D、M、B、T。当需要考虑更多资源时,以此类推。
接下来由获取的相对权重bσ,结合式1和式2生成初始权重系数向量Wk′,任务k的优先级分值如下:
fk′=Wk′·F(Xk)T
Wk′=(wk,1′,wk,2′,...,wk,N′)=(a1,a2,γbC,γbF,γbD,γbM,γbB,γbT,...)
F(Xk)=(F1(xk,1),F2(xk,2),...,FN(xk,N)) (3)
=(Sk,Hk,g(Ck),g(Fk),g(Dk),g(Mk),g(Bk),g(Tk),...)
步骤102中,为了强调任务间的竞争性,本实施例针对排队队列中的任务进行聚类处理,将资源需求类似的任务自动聚为一类。继而在步骤103中对权重系数进行动态调整,将同一聚类中的任务赋予相同的权重系数向量,不同聚类中的任务赋予不同权重系数向量。其中聚类个数和评价聚类效果好坏的有效性指标将直接导致聚类结果的好坏。
针对采集到的多维度属性数据,本实施例以聚类结果的组间相似度和组内相似度设计有效性指标,通过迭代获得最佳聚类数并对任务进行自动聚类。
根据模型假设,排队等候区共有M个任务,每个任务有N个属性数据(用户服务等级、各类资源需求量),则采集到的任务的属性数据是一个M×N的数据集DM×N=(X1,X2,...,XM)T。对于多维数据的聚类处理,在传统的欧式距离基础上,结合维度投票思想给出数据点间相似度的定义。
定义1(点的相似维度)给定一个阈值ψ=(ψ1,ψ2,...,ψN),1≤j≤N,若xj和yj之间的距离小于或等于ψj,则称数据点X和Y关于ψj在第j维度上是相似的。
定义2(相似点)给定一个阈值向量ψ=(ψ1,ψ2,...,ψN),若点X和Y在所有维度上都是关于ψj(j=1,2,...,N)相似的,则称数据点X和Y是关于阈值向量ψ相似的。
定义3(阈值比较)给定两个阈值向量若满足下列两点,则称ψa>ψb
(1)
(2)至少存在一个j∈[1,N],使得
根据以上定义,阈值向量ψ的大小决定了数据集的划分方式,这样即可把任务的聚类问题归结为求解最优阈值向量ψ*,从而发现与之对应的最优聚类数K*和最佳划分方式C*
为了使数据对象合并到一个组(簇)中,每次聚类迭代需要保证阈值ψj在一定范围内渐进增加。假设第j维度上对应的阈值增量为θj,用维度稀疏度来计算θj,则数据集D在第j维度的分布稀疏度λj如式4所示:
其中,xk,j是任务k的属性数据向量Xk在第j属性数据维度上的属性值;xi,j是任务i的属性数据向量Xi在第j属性数据维度上的属性值;是Xk在第j属性数据维度上的属性在[0,1]上的规范值;μj表示第j属性数据维度的中心点。由此可以得出阈值ψj的迭代增量θj的表示公式:
其中ζ是给定的一个具有很小正数值的算法参数,决定了每个维度上的搜索步数,用于控制计算精度,可通过实验获得。
根据聚类原则,聚类结果应当使组内的数据具有尽可能高的相似度、不同组的数据具有尽可能高的分离度。假设任务被聚类为K组,聚类情况CK=(C1,C2,...,CK)。根据统计原理,基于单个任务的组内距离和组间距离,定义第p类中的第q个请求的聚类有效性指标BIP(p,q)表示如下:
其中第p类中的第q个请求的组间距离B(p,q)为该请求到其他类质心的平均距离,组内距离I(p,q)为该请求对第p类其他服务请求的平均距离。表示第p类中第q个任务在第n维上的数据值;表示第k类的质心点在第n维上的数据值;表示第p类中第h个任务在第n维上的数据值;hp表示划分到第p类中的请求个数。在本发明中,BIP指标越大反映了单个数据对象聚类效果越好,为了减少孤立点和噪声点对聚类结果的影响,在聚类过程中根据公式7,求取总共M个服务请求的BIP指标值的平均值作为该次聚类的有效指标Q(CK):
根据目前学术界公认的经验结论,相应的最优聚类结果为:
综合以上分析,本实施例中步骤102描述如下:
输入:当前时刻排队等候区M个任务的属性数据集DM×N=(X1,X2,...,XM)T
输出:满足目标函数maxQ(CK)的最优聚类结果:最优聚类数K*和最优划分C*
初始化:针对D中数据进行统计分析,根据式4、5求取ψ的每次迭代增量θ=(θ1,θ2,...,θN)。设阈值向量ψ初始值ψ=ψ0=0,以此开始迭代。
所述步骤102具体可以包括:
21、判断所述M个任务中每两个任务关于阈值向量ψ是否相似,将满足定义2的相似点划分为一个子集,生成该次迭代的聚类方案CK和聚类数K;
22、根据方案CK,计算该次聚类的有效性指标Q(CK);
23、阈值向量ψ以步长θ进行递增,将ψ=ψ+θ返回步骤21中进行循环,直到ψ增长到所有任务被划分到同一个集合中,即迭代生成的聚类数K=1时,迭代停止,进行步骤24;
24、比较每次迭代的所述有效性指标,确定满足目标函数的最优聚类数K*和最优划分C*;根据最优划分将所述M个任务划分为K*个组。
其中,步骤22可以但不限于按照式6、7进行计算;步骤24中可以但不限于根据式8进行确定;步长θ可以但不限于根据式5计算。
步骤103中,通过任务聚类将属性数据类似的任务划分为一组的同时也将多个任务的竞争划分为组内竞争和组外竞争两部分。接下来根据组内任务的实际情况进行动态权重调整,针对组内竞争由同一权重系数向量、组外竞争由不同的权重系数向量进行任务的优先级分值计算。这种基于动态权重系数向量的自适应排队体系,既体现了任务对有限服务资源的竞争性又保证了资源调度的公平性,使得服务顺序更为合理和正确。
在此,本实施例采用熵值法对所述初始权重系数进行调整,生成动态权重向量。
在信息论中,信息熵是对系统无序程度的度量,表达式如下:
其中p(xe)是事件xe发生的概率,n为事件的个数。根据公式9可以看出:信息熵越小,表示在该属性数据下不同请求的任务属性的不均匀程度越大,表明该属性数据的作用越大,权重也应当越大。反之信息熵越大,则属性数据分布的不均匀程度越小,表明该属性数据作用越小,权重也应越小。
根据当前时刻排队等候区的任务的属性数据,假设经聚类后第τ组任务的属性数据向量矩阵为:
其中a代表该组内的任务个数,N代表属性数据的个数。
步骤103具体可以包括:
31、计算第τ组任务的属性数据向量矩阵中的元素在属性数据j下的发生概率其中τ的取值为1到K*的每个整数:
32、根据式(9),经归一化处理计算属性数据j的熵值:
33、计算属性j的熵权:
34、利用熵权值调整第τ组任务的初始权重系数向量Wτ′,得到属性数据j的权重系数wτ,j
其中wτ,j′(j=1,2,...,N)是第τ组任务初始权重系数向量Wτ′对应的各属性数据的初始权重系数,i为任务的序号,j为属性数据的序号;各属性数据的wτ,j(j=1,2,...,N)组成第τ组的权重系数向量。
根据以上步骤以此对从j=1到N每一个属性数据的初始权重系数进行调整,最终生成第τ组任务的权重系数向量Wτ=(wτ,1,wτ,2,...,wτ,N)。
通过以上步骤,将t时刻排队等候区的M个任务根据其属性数据划分为K*个组,每个组对应一个不同的权重系数向量。任务的聚类划分以及权重系数向量的生成均基于排队的任务的属性数据以及当前平台的资源部署情况。
接下来步骤104中结合式3,根据调整后的权重系数向量计算任务的优先级分值,以进行排序。假设第τ(1≤τ≤K*)个组内任务对应的权重系数向量Wτ=(wτ,1,wτ,2,...,wτ,N),则任意任务k∈Cτ的优先级分值表示如下:
fk=Wτ·F(Xk)T,k∈Cτ
F(Xk)=(F1(xk,1),F2(xk,2),...,FN(xk,N)) (10)
=(Sk,Hk,g(Ck),g(Fk),g(Dk),g(Mk),g(Bk),g(Tk),...)
s.t.g(x)=e-αx,α>0
针对所有M个任务根据上述方法评估其优先权分值,然后按其优先权分值从高到低优先由排队等候区进入服务缓冲区。当平台中存在空闲的服务器节点时,空闲节点将按照先入先出的原则调用缓冲区的任务,根据其资源需求量提供对应的资源服务。
实施例二、一种资源分配系统,应用于基础设施即服务云平台中,包括:
初始化模块,用于在每个资源分配周期开始的时刻,对于排队的M个任务,根据资源部署数据生成任务的各属性数据的初始权重系数;M为大于1的整数;任务的所述属性数据包括该任务的用户服务等级、已等待时长、及各资源需求量;所述资源部署数据包括各类资源的资源占用率以及平均资源释放率;
分组模块,用于对所述M个任务根据属性数据进行聚类,将所述M个任务划分为多个组;
调整模块,用于分别对于各组利用熵值法对所述各属性数据的初始权重系数组成的初始权重系数向量进行调整,得到各组的权重系数向量;
分配模块,用于根据各任务所属组的权重系数向量和该任务的属性数据,分别计算各任务的优先级分值,按照优先级分值从高到低的顺序对各任务进行资源分配。
本实施例的一种实施方式中,所述初始权重系数具体可以包括用户服务等级的权重系数a1、已等待时长的权重系数a2、及各资源需求量之和的权重系数γ;
a1、a2、γ之和为1,且a1、a2、γ均属于闭区间[0,1];
所述资源需求量具体可以包括CPU核心数、主频、内存、硬盘、带宽大小的需求量及资源占用时间;
所述资源需求量之和为各类资源需求量乘以该类资源需求量对应的相对权重bσ后相加的结果;各类资源需求量的相对权重bσ之和为1,各相对权重bσ均属于闭区间[0,1];
资源需求量的相对权重为:
ηC、ηF、ηD、ηM、ηB分别为CPU核心数、主频、内存、硬盘、带宽大小的资源占用率;ηT为平均资源释放率;σ分别取为C、F、D、M、B、T。
本实施例的一种实施方式中,所述分组模块具体可以包括:
判断单元、计算单元、迭代单元、划分单元;
所述判断单元用于判断所述M个任务中每两个任务关于阈值向量ψ是否相似,将相似点划分为一个子集,生成该次迭代的聚类方案CK和聚类数K,交给所述计算单元;
所述计算单元用于根据方案CK,计算该次聚类的有效性指标Q(CK);
所述迭代单元用于将阈值向量ψ以预定步长θ进行递增,将ψ=ψ+θ发送给所述判断单元,直到ψ增长到所有任务被划分到同一个集合中,即迭代生成的聚类数K=1时,迭代停止,启动所述划分单元;
所述划分单元用于比较每次迭代的有效性指标,确定满足目标函数的最优聚类数K*和最优划分C*;根据最优划分将所述M个任务划分为K*个组。
本实施例的一种实施方式中,所述调整模块具体可以包括:
概率计算单元,用于计算第τ组任务的属性数据向量矩阵中的元素在属性数据j下的发生概率其中τ的取值为1到K*的每个整数:
熵值计算单元,用于经归一化处理计算属性数据j的熵值:
熵权计算单元,用于计算属性数据j的熵权:
权重调整单元,用于利用熵权调整第τ组任务的初始权重系数向量Wτ′,得到属性数据j的权重系数wτ,j
其中wτ,j′(j=1,2,...,N)是第τ组任务初始权重系数向量Wτ′对应的各属性数据的初始权重系数,a代表该组内的任务个数,N代表属性数据的个数,i为任务的序号,j为属性数据的序号;各属性数据的wτ,j(j=1,2,...,N)组成第τ组的权重系数向量。
本实施例的一种实施方式中,所述分配模块计算出的任一任务k的优先权分值fk可以为:
fk=Wτ·F(Xk)T,k∈Cτ
F(Xk)=(Sk,Hk,g(Ck),g(Fk),g(Dk),g(Mk),g(Bk),g(Tk))
s.t.g(x)=e-αx,α>0
Wτ=(wτ,1,wτ,2,...,wτ,N)为任务所属的第τ组的权重系数向量;Sk为任务k的用户服务等级的函数表示,Hk为任务k的已等待时长的函数表示,Ck,Fk,Dk,Mk,Bk,Tk依次为任务k所需求CPU核心数、主频、内存、硬盘、带宽大小、资源占用时间,s.t.后为约束条件,g为预定的统一函数。
本实施例的一个例子中,应用于IaaS云平台的资源服务系统如图2所示,包括:
资源申请模块21、资源监控模块22、资源迁移模块23以及前文的所述初始化模块24、分组模块25、调整模块26和分配模块27;
所述资源申请模块21用于定期收集用户的资源申请,还可以进行统一格式封装;一个资源申请封装为一个任务;
所述初始化模块24、分组模块25、调整模块26和分配模块27共同协作,根据用户服务等级、资源需求量、已等待时长等因素对所有任务进行优先级排序;
所述资源监控模块22用于以界面的方式实时呈现资源池中各类资源的使用情况,包括资源总量、当前资源占用量、下一时刻资源释放量等;
所述资源迁移模块23用于根据所述任务确定用户的资源需求情况,对资源池执行虚拟机迁移或者物理机迁移任务;
所述分配模块27还用于对接收到的任务提供调度服务,包括从资源池中选择满足用户需求的虚拟机模板,并迁入对应的物理机中,完成资源分配等。
本实施例中的资源服务系统的模型如图3所示,包括以下6个服务流程:
①首先,用户通过前端界面登录平台Portal服务器,向平台提出资源申请,包括对CPU核心数、主频、内存、硬盘、带宽大小等资源的需求量以及资源占用时间,资源申请模块21定期收集资源申请并将每一条资源申请封装成统一数据格式的任务,以固定时间间隔送入初始化模块24,各任务按照送入的时间顺序形成服务队列。
②初始化模块24在资源分配周期到达后,通过资源监控模块22获取当前时刻云平台的资源占用率及资源释放率,结合服务队列中各任务的属性数据,生成初始权重系数;所述属性数据包括用户服务等级、已等待时长、资源申请量等。分组模块25对服务队列中的任务根据属性数据进行聚类,划分为多个组;调整模块26分别对于各组利用熵值法对所述初始权重系数进行调整,得到各组的权重系数向量;分配模块27根据各任务所属组的权重系数和该任务的属性数据,分别计算各任务的优先级分值,按照优先级分值从高到低的顺序对各任务进行排队。
③为了加快业务处理速度,服务队列包括两部分:排队等候区和服务缓冲区。其中,排队等候区按照②中的排队顺序,对所有任务进行服务优先权排序,并按照优先权分值从高到低的顺序依次进入服务缓冲区;服务缓冲区则按照先入先出的原则对即将处理的任务进行排序,其固定长度为n个任务。
④统计服务缓冲区排队的任务的资源需求量,作为新增资源占用量上报给资源监控模块。由资源监控模块22判断当前空闲资源能否满足该资源需求量。如果能满足,则由所述分配模块27进行资源分配。如果不能满足,启动资源迁移模块23:首先判断是否可以通过平台虚拟机迁移释放相关资源,如果可以满足则进行虚拟机迁移;如果虚拟机迁移仍无法满足该资源需求量,则判断是否可以通过物理机迁移释放相关资源,如果可以满足则进行物理机迁移;如果物理机迁移都无法满足该资源需求量,则从服务缓冲区队列尾部将任务依次转移至排队等候区,直到服务缓冲区的资源需求量得到满足。
⑤接下来,将服务缓冲区的任务按照先入先出的排队原则,以轮循的方式送入资源调度系统中各调度服务器。
⑥调度服务器根据当前资源占用情况对资源池中的物理机资源、虚拟资源、存储资源进行调度以满足用户的资源需求。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明的权利要求的保护范围。

Claims (6)

1.一种资源分配方法,应用于基础设施即服务云平台中,包括:
S101、在每个资源分配周期开始的时刻,对于排队的M个任务,根据资源部署数据生成任务的各属性数据的初始权重系数;M为大于1的整数;任务的所述属性数据包括该任务的用户服务等级、已等待时长、及各资源需求量;所述资源部署数据包括各类资源的资源占用率以及平均资源释放率;
S102、对所述M个任务根据属性数据进行聚类,将所述M个任务划分为多个组;
S103、分别对于各组利用熵值法对所述各属性数据的初始权重系数组成的初始权重系数向量进行调整,得到各组的权重系数向量;
S104、根据各任务所属组的权重系数向量和该任务的属性数据,分别计算各任务的优先级分值,按照优先级分值从高到低的顺序对各任务进行资源分配;
所述步骤S102包括:
21、判断所述M个任务中每两个任务关于阈值向量ψ是否相似,将相似点划分为一个子集,生成该次迭代的聚类方案CK和聚类数K;
22、根据方案CK,计算该次聚类的有效性指标Q(CK);
23、阈值向量ψ以步长θ进行递增,将ψ=ψ+θ返回步骤21中进行循环,直到ψ增长到所有任务被划分到同一个集合中,即迭代生成的聚类数K=1时,迭代停止,进行步骤24;
24、比较每次迭代的所述有效性指标,确定满足目标函数的最优聚类数K*和最优划分C*;根据最优划分将所述M个任务划分为K*个组;
所述步骤104中计算出的任一任务k的优先权分值fk为:
fk=Wτ·F(Xk)T,k∈Cτ
F(Xk)=(Sk,Hk,g(Ck),g(Fk),g(Dk),g(Mk),g(Bk),g(Tk))
s.t.g(x)=e-αx,α>0
Wτ=wτ,1,wτ,2,...,wτ,N为任务所属的组的权重系数向量;Sk为任务k的用户服务等级的函数表示,Hk为任务k的已等待时长的函数表示,Ck,Fk,Dk,Mk,Bk,Tk依次为任务k所需求CPU核心数、主频、内存、硬盘、带宽大小、资源占用时间,s.t.后为约束条件,g为预定的统一函数;
Xk=(xk,1,xk,2,...,xk,N),为第k个任务的属性数据向量;
F(Xk)是Xk的函数表示;
N代表属性数据的个数;
Cτ表示第τ个簇内任务的集合,1≤τ≤K*
2.如权利要求1所述的方法,其特征在于:
所述初始权重系数包括用户服务等级的权重系数a1、已等待时长的权重系数a2、及各资源需求量之和的权重系数γ;
a1、a2、γ之和为1,且a1、a2、γ均属于闭区间[0,1];
所述资源需求量包括CPU核心数、主频、内存、硬盘、带宽大小的需求量及资源占用时间;
所述资源需求量之和为各类资源需求量乘以该类资源需求量对应的相对权重bσ后相加的结果;各类资源需求量的相对权重bσ之和为1,各相对权重bσ均属于闭区间[0,1];
资源需求量的相对权重为:
<mrow> <msub> <mi>b</mi> <mi>&amp;sigma;</mi> </msub> <mo>=</mo> <mfrac> <msub> <mi>&amp;eta;</mi> <mi>&amp;sigma;</mi> </msub> <mrow> <msub> <mi>&amp;eta;</mi> <mi>C</mi> </msub> <mo>+</mo> <msub> <mi>&amp;eta;</mi> <mi>F</mi> </msub> <mo>+</mo> <msub> <mi>&amp;eta;</mi> <mi>D</mi> </msub> <mo>+</mo> <msub> <mi>&amp;eta;</mi> <mi>M</mi> </msub> <mo>+</mo> <msub> <mi>&amp;eta;</mi> <mi>B</mi> </msub> <mo>+</mo> <msub> <mi>&amp;eta;</mi> <mi>T</mi> </msub> </mrow> </mfrac> <mo>;</mo> </mrow>
ηC、ηF、ηD、ηM、ηB分别为CPU核心数、主频、内存、硬盘、带宽大小的资源占用率;ηT为平均资源释放率;σ分别取为C、F、D、M、B、T。
3.如权利要求1所述的方法,其特征在于,所述步骤S103包括:
31、计算第τ组任务的属性数据向量矩阵中的元素在属性数据j下的发生概率其中τ的取值为1到K*的每个整数:
<mrow> <msubsup> <mi>p</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mi>&amp;tau;</mi> </msubsup> <mo>=</mo> <mfrac> <msubsup> <mi>x</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mi>&amp;tau;</mi> </msubsup> <mrow> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>a</mi> </munderover> <msubsup> <mi>x</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mi>&amp;tau;</mi> </msubsup> </mrow> </mfrac> <mo>,</mo> <msubsup> <mi>p</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mi>&amp;tau;</mi> </msubsup> <mo>&amp;Element;</mo> <mrow> <mo>&amp;lsqb;</mo> <mrow> <mn>0</mn> <mo>,</mo> <mfrac> <mn>1</mn> <mi>a</mi> </mfrac> </mrow> <mo>&amp;rsqb;</mo> </mrow> </mrow>
32、经归一化处理计算属性数据j的熵值:
<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>I</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> <mo>=</mo> <mo>-</mo> <mrow> <mo>(</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>a</mi> </munderover> <msubsup> <mi>p</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mi>&amp;tau;</mi> </msubsup> <mo>&amp;CenterDot;</mo> <mi>ln</mi> <mi> </mi> <msubsup> <mi>p</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mi>&amp;tau;</mi> </msubsup> <mo>)</mo> </mrow> <mo>/</mo> <mi>ln</mi> <mi> </mi> <mi>a</mi> <mo>,</mo> <msubsup> <mi>I</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> <mo>&amp;Element;</mo> <mo>&amp;lsqb;</mo> <mn>0</mn> <mo>,</mo> <mn>1</mn> <mo>&amp;rsqb;</mo> <mo>,</mo> </mrow> </mtd> <mtd> <mrow> <mi>s</mi> <mo>.</mo> <mi>t</mi> <mo>.</mo> </mrow> </mtd> <mtd> <mrow> <munder> <mi>lim</mi> <mrow> <msub> <mi>p</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>&amp;RightArrow;</mo> <mn>0</mn> </mrow> </munder> <msubsup> <mi>p</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mi>&amp;tau;</mi> </msubsup> <mo>&amp;CenterDot;</mo> <mi>ln</mi> <mi> </mi> <msubsup> <mi>p</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mi>&amp;tau;</mi> </msubsup> <mo>=</mo> <mn>0</mn> </mrow> </mtd> </mtr> </mtable> </mfenced>
33、计算属性数据j的熵权:
<mrow> <msubsup> <mi>K</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> <mo>=</mo> <mfrac> <mrow> <mn>1</mn> <mo>-</mo> <msubsup> <mi>I</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> </mrow> <mrow> <mi>N</mi> <mo>-</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <msubsup> <mi>I</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> </mrow> </mfrac> <mo>,</mo> <msubsup> <mi>K</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> <mo>&amp;Element;</mo> <mo>&amp;lsqb;</mo> <mn>0</mn> <mo>,</mo> <mn>1</mn> <mo>&amp;rsqb;</mo> <mo>,</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <msubsup> <mi>K</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> <mo>=</mo> <mn>1</mn> </mrow>
34、利用熵权调整第τ组任务的初始权重系数向量Wτ',得到属性数据j的权重系数wτ,j
<mrow> <msub> <mi>w</mi> <mrow> <mi>&amp;tau;</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mrow> <msup> <msub> <mi>w</mi> <mrow> <mi>&amp;tau;</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>&amp;prime;</mo> </msup> <mo>&amp;CenterDot;</mo> <msubsup> <mi>K</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> </mrow> <mrow> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <msup> <msub> <mi>w</mi> <mrow> <mi>&amp;tau;</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>&amp;prime;</mo> </msup> <mo>&amp;CenterDot;</mo> <msubsup> <mi>K</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> </mrow> </mfrac> <mo>,</mo> <msub> <mi>w</mi> <mrow> <mi>&amp;tau;</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>&amp;Element;</mo> <mo>&amp;lsqb;</mo> <mn>0</mn> <mo>,</mo> <mn>1</mn> <mo>&amp;rsqb;</mo> <mo>,</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <msub> <mi>w</mi> <mrow> <mi>&amp;tau;</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mn>1</mn> </mrow>
其中wτ,j'j=1,2,...,N是第τ组任务初始权重系数向量Wτ'对应的各属性数据的初始权重系数,a代表该组内的任务个数,N代表属性数据的个数,i为任务的序号,j为属性数据的序号;各属性数据的wτ,jj=1,2,...,N组成第τ组的权重系数向量。
4.一种资源分配系统,应用于基础设施即服务云平台中,其特征在于,包括:
初始化模块,用于在每个资源分配周期开始的时刻,对于排队的M个任务,根据资源部署数据生成任务的各属性数据的初始权重系数;M为大于1的整数;任务的所述属性数据包括该任务的用户服务等级、已等待时长、及各资源需求量;所述资源部署数据包括各类资源的资源占用率以及平均资源释放率;
分组模块,用于对所述M个任务根据属性数据进行聚类,将所述M个任务划分为多个组;
调整模块,用于分别对于各组利用熵值法对所述各属性数据的初始权重系数组成的初始权重系数向量进行调整,得到各组的权重系数向量;
分配模块,用于根据各任务所属组的权重系数向量和该任务的属性数据,分别计算各任务的优先级分值,按照优先级分值从高到低的顺序对各任务进行资源分配;
所述分组模块包括:
判断单元、计算单元、迭代单元、划分单元;
所述判断单元用于判断所述M个任务中每两个任务关于阈值向量是否相似,将相似点划分为一个子集,生成该次迭代的聚类方案和聚类数,交给所述计算单元;
所述计算单元用于根据方案,计算该次聚类的有效性指标;
所述迭代单元用于将阈值向量以步长进行递增,将发送给所述判断单元,直到增长到所有任务被划分到同一个集合中,即迭代生成的聚类数时,迭代停止,启动所述划分单元;
所述划分单元用于比较每次迭代的有效性指标,确定满足目标函数的最优聚类数和最优划分;根据最优划分将所述M个任务划分为个组;
所述分配模块计算出的任一任务k的优先权分值fk为:
fk=Wτ·F(Xk)T,k∈Cτ
F(Xk)=(Sk,Hk,g(Ck),g(Fk),g(Dk),g(Mk),g(Bk),g(Tk))
s.t.g(x)=e-αx,α>0
Wτ=wτ,1,wτ,2,...,wτ,N为任务所属的第τ组的权重系数向量;Sk为任务k的用户服务等级的函数表示,Hk为任务k的已等待时长的函数表示,Ck,Fk,Dk,Mk,Bk,Tk依次为任务k所需求CPU核心数、主频、内存、硬盘、带宽大小、资源占用时间,s.t.后为约束条件,g为预定的统一函数;
Xk=(xk,1,xk,2,...,xk,N),为第k个任务的属性数据向量;
F(Xk)是Xk的函数表示;
N代表属性数据的个数;
Cτ表示第τ个簇内任务的集合,1≤τ≤K*
5.如权利要求4所述的系统,其特征在于:
所述初始权重系数包括用户服务等级的权重系数a1、已等待时长的权重系数a2、及各资源需求量之和的权重系数γ;
a1、a2、γ之和为1,且a1、a2、γ均属于闭区间[0,1];
所述资源需求量包括CPU核心数、主频、内存、硬盘、带宽大小的需求量及资源占用时间;
所述资源需求量之和为各类资源需求量乘以该类资源需求量对应的相对权重bσ后相加的结果;各类资源需求量的相对权重bσ之和为1,各相对权重bσ均属于闭区间[0,1];
资源需求量的相对权重为:
<mrow> <msub> <mi>b</mi> <mi>&amp;sigma;</mi> </msub> <mo>=</mo> <mfrac> <msub> <mi>&amp;eta;</mi> <mi>&amp;sigma;</mi> </msub> <mrow> <msub> <mi>&amp;eta;</mi> <mi>C</mi> </msub> <mo>+</mo> <msub> <mi>&amp;eta;</mi> <mi>F</mi> </msub> <mo>+</mo> <msub> <mi>&amp;eta;</mi> <mi>D</mi> </msub> <mo>+</mo> <msub> <mi>&amp;eta;</mi> <mi>M</mi> </msub> <mo>+</mo> <msub> <mi>&amp;eta;</mi> <mi>B</mi> </msub> <mo>+</mo> <msub> <mi>&amp;eta;</mi> <mi>T</mi> </msub> </mrow> </mfrac> <mo>;</mo> </mrow>
ηC、ηF、ηD、ηM、ηB分别为CPU核心数、主频、内存、硬盘、带宽大小的资源占用率;ηT为平均资源释放率;σ分别取为C、F、D、M、B、T。
6.如权利要求4所述的系统,其特征在于,所述调整模块包括:
概率计算单元,用于计算第τ组任务的属性数据向量矩阵中的元素在属性数据j下的发生概率其中τ的取值为1到K*的每个整数:
<mrow> <msubsup> <mi>p</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mi>&amp;tau;</mi> </msubsup> <mo>=</mo> <mfrac> <msubsup> <mi>x</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mi>&amp;tau;</mi> </msubsup> <mrow> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>a</mi> </munderover> <msubsup> <mi>x</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mi>&amp;tau;</mi> </msubsup> </mrow> </mfrac> <mo>,</mo> <msubsup> <mi>p</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mi>&amp;tau;</mi> </msubsup> <mo>&amp;Element;</mo> <mrow> <mo>&amp;lsqb;</mo> <mrow> <mn>0</mn> <mo>,</mo> <mfrac> <mn>1</mn> <mi>a</mi> </mfrac> </mrow> <mo>&amp;rsqb;</mo> </mrow> </mrow>
熵值计算单元,用于经归一化处理计算属性数据j的熵值:
<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <msubsup> <mi>I</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> <mo>=</mo> <mo>-</mo> <mrow> <mo>(</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>a</mi> </munderover> <msubsup> <mi>p</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mi>&amp;tau;</mi> </msubsup> <mo>&amp;CenterDot;</mo> <mi>ln</mi> <mi> </mi> <msubsup> <mi>p</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mi>&amp;tau;</mi> </msubsup> <mo>)</mo> </mrow> <mo>/</mo> <mi>ln</mi> <mi> </mi> <mi>a</mi> <mo>,</mo> <msubsup> <mi>I</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> <mo>&amp;Element;</mo> <mo>&amp;lsqb;</mo> <mn>0</mn> <mo>,</mo> <mn>1</mn> <mo>&amp;rsqb;</mo> <mo>,</mo> </mrow> </mtd> <mtd> <mrow> <mi>s</mi> <mo>.</mo> <mi>t</mi> <mo>.</mo> </mrow> </mtd> <mtd> <mrow> <munder> <mi>lim</mi> <mrow> <msub> <mi>p</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>&amp;RightArrow;</mo> <mn>0</mn> </mrow> </munder> <msubsup> <mi>p</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mi>&amp;tau;</mi> </msubsup> <mo>&amp;CenterDot;</mo> <mi>ln</mi> <mi> </mi> <msubsup> <mi>p</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mi>&amp;tau;</mi> </msubsup> <mo>=</mo> <mn>0</mn> </mrow> </mtd> </mtr> </mtable> </mfenced>
熵权计算单元,用于计算属性数据j的熵权:
<mrow> <msubsup> <mi>K</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> <mo>=</mo> <mfrac> <mrow> <mn>1</mn> <mo>-</mo> <msubsup> <mi>I</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> </mrow> <mrow> <mi>N</mi> <mo>-</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <msubsup> <mi>I</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> </mrow> </mfrac> <mo>,</mo> <msubsup> <mi>K</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> <mo>&amp;Element;</mo> <mo>&amp;lsqb;</mo> <mn>0</mn> <mo>,</mo> <mn>1</mn> <mo>&amp;rsqb;</mo> <mo>,</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <msubsup> <mi>K</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> <mo>=</mo> <mn>1</mn> </mrow>
权重调整单元,用于利用熵权调整第τ组任务的初始权重系数向量Wτ',得到属性数据j的权重系数wτ,j
<mrow> <msub> <mi>w</mi> <mrow> <mi>&amp;tau;</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mrow> <msup> <msub> <mi>w</mi> <mrow> <mi>&amp;tau;</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>&amp;prime;</mo> </msup> <mo>&amp;CenterDot;</mo> <msubsup> <mi>K</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> </mrow> <mrow> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <msup> <msub> <mi>w</mi> <mrow> <mi>&amp;tau;</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>&amp;prime;</mo> </msup> <mo>&amp;CenterDot;</mo> <msubsup> <mi>K</mi> <mi>j</mi> <mi>&amp;tau;</mi> </msubsup> </mrow> </mfrac> <mo>,</mo> <msub> <mi>w</mi> <mrow> <mi>&amp;tau;</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>&amp;Element;</mo> <mo>&amp;lsqb;</mo> <mn>0</mn> <mo>,</mo> <mn>1</mn> <mo>&amp;rsqb;</mo> <mo>,</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <msub> <mi>w</mi> <mrow> <mi>&amp;tau;</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mn>1</mn> </mrow>
其中wτ,j'j=1,2,...,N是第τ组任务初始权重系数向量Wτ'对应的各属性数据的初始权重系数,a代表该组内的任务个数,N代表属性数据的个数,i为任务的序号,j为属性数据的序号;各属性数据的wτ,jj=1,2,...,N组成第τ组的权重系数向量。
CN201410406388.5A 2014-08-18 2014-08-18 一种资源服务系统及其资源分配方法 Active CN104168318B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410406388.5A CN104168318B (zh) 2014-08-18 2014-08-18 一种资源服务系统及其资源分配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410406388.5A CN104168318B (zh) 2014-08-18 2014-08-18 一种资源服务系统及其资源分配方法

Publications (2)

Publication Number Publication Date
CN104168318A CN104168318A (zh) 2014-11-26
CN104168318B true CN104168318B (zh) 2018-03-23

Family

ID=51911939

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410406388.5A Active CN104168318B (zh) 2014-08-18 2014-08-18 一种资源服务系统及其资源分配方法

Country Status (1)

Country Link
CN (1) CN104168318B (zh)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104468413B (zh) * 2014-11-27 2017-12-22 中国联合网络通信集团有限公司 一种网络服务方法及系统
CN104618480B (zh) * 2015-01-29 2018-11-13 南京理工大学 基于网络链路利用率驱动的云系统资源分配方法
CN104657217B (zh) * 2015-02-04 2017-10-24 南京理工大学紫金学院 一种基于非均匀粒度分类的云环境任务调度方法
EP3783504B1 (en) * 2015-03-16 2023-06-14 Liveperson, Inc. Resource prioritization and communication-channel establishment
CN105007312A (zh) * 2015-07-03 2015-10-28 叶秀兰 一种云计算服务器自适应负载均衡控制方法及控制系统
CN106648825A (zh) * 2015-11-04 2017-05-10 田文洪 一种最大化虚拟机利润的调度方法与装置
CN106779272A (zh) * 2015-11-24 2017-05-31 阿里巴巴集团控股有限公司 一种风险预测方法和设备
CN105516249A (zh) * 2015-11-25 2016-04-20 深圳市网心科技有限公司 共享流量的收益分配方法及其后台服务器和系统
CN105511863A (zh) * 2015-11-30 2016-04-20 中电科华云信息技术有限公司 基于应用服务属性识别决定服务部署形态的方法及系统
CN106055409B (zh) 2016-05-31 2017-11-14 广东欧珀移动通信有限公司 一种处理器资源的分配方法及移动终端
CN106095545B (zh) * 2016-06-01 2019-06-25 东软集团股份有限公司 任务调度方法及装置
CN105847453B (zh) * 2016-06-22 2019-07-09 中国联合网络通信集团有限公司 一种服务等级实时调整方法及装置
CN106453146B (zh) * 2016-11-17 2020-12-11 北京华胜天成科技股份有限公司 私有云计算资源的分配方法、系统、设备和可读存储介质
CN106506670B (zh) * 2016-11-21 2019-11-05 北京永信至诚科技股份有限公司 一种云平台虚拟资源高速调度方法与系统
CN108123825B (zh) * 2016-11-30 2021-02-09 华为技术有限公司 一种网络资源管理方法及控制器
CN106598735B (zh) * 2016-12-13 2019-08-09 广东金赋科技股份有限公司 一种分布式计算方法、主控节点和计算系统
CN107979704A (zh) * 2017-12-01 2018-05-01 中国联合网络通信集团有限公司 排队方法、排队系统
CN108334475B (zh) * 2017-12-27 2022-02-11 成都西科微波通讯有限公司 一种基于加权信息增量最大化准则的多传感器分配方法
CN108108907A (zh) * 2017-12-31 2018-06-01 广州用能互联网有限公司 多因素考虑的维保排程系统及方法
CN108564180A (zh) * 2017-12-31 2018-09-21 广州用能互联网有限公司 一种维保排程系统及方法
CN108205709A (zh) * 2017-12-31 2018-06-26 广州用能互联网有限公司 维保任务分配系统及方法
CN109324886A (zh) * 2018-09-14 2019-02-12 中国人民解放军国防科技大学 集群资源调度方法和装置
CN109214011A (zh) * 2018-09-19 2019-01-15 深圳市合言信息科技有限公司 一种通过用户反馈来自我完善的认知引擎选择策略
CN109298927A (zh) * 2018-10-09 2019-02-01 黄杏兰 一种基于云计算的并发数据处理方法
CN109495565B (zh) * 2018-11-14 2021-11-30 中国科学院上海微系统与信息技术研究所 基于分布式泛在计算的高并发服务请求处理方法和设备
CN109542608B (zh) * 2018-11-30 2022-03-04 北京仿真中心 一种基于混合排队网络的云仿真任务调度方法
CN109783236B (zh) * 2019-01-16 2021-08-24 北京百度网讯科技有限公司 用于输出信息的方法和装置
CN109918827B (zh) * 2019-03-19 2022-06-21 福建工程学院 一种具筛选机制的上下界限收敛搜寻仿真优化计算方法
CN110135685B (zh) * 2019-04-04 2022-08-16 中车工业研究院有限公司 一种产品设计任务的分配方法及装置
CN111858014A (zh) * 2019-04-24 2020-10-30 中国移动通信集团河北有限公司 资源分配方法及装置
CN110719320B (zh) * 2019-09-18 2022-05-27 上海联蔚数字科技集团股份有限公司 公有云配置调整信息的生成方法和设备
CN110795245B (zh) * 2019-10-25 2022-07-08 北京浪潮数据技术有限公司 一种Kubernetes服务权重管理的方法以及装置
CN110865871A (zh) * 2019-11-14 2020-03-06 北京京航计算通讯研究所 基于资源合理化应用的虚拟化集群资源调度方法
CN111144701B (zh) * 2019-12-04 2022-03-22 中国电子科技集团公司第三十研究所 一种分布式环境下etl作业调度资源分类评估的方法
CN111343275B (zh) * 2020-03-02 2022-09-30 北京奇艺世纪科技有限公司 资源调度方法和系统
CN111400007A (zh) * 2020-03-13 2020-07-10 重庆特斯联智慧科技股份有限公司 一种基于边缘计算的任务调度方法和系统
CN113765949A (zh) * 2020-06-02 2021-12-07 华为技术有限公司 资源分配的方法以及装置
CN113780700B (zh) * 2020-07-08 2023-09-26 北京京东振世信息技术有限公司 一种数据处理的方法、装置和存储介质
CN112101576B (zh) * 2020-09-09 2021-07-30 上海松鼠课堂人工智能科技有限公司 分布式设备使用机器学习模型聚合系统
CN114816687A (zh) * 2021-01-22 2022-07-29 京东方科技集团股份有限公司 集群资源控制方法、装置及存储介质
CN113015218B (zh) * 2021-04-29 2023-04-07 中国联合网络通信集团有限公司 移动通信信息的处理方法和装置
CN116126496A (zh) * 2022-12-30 2023-05-16 中国人民解放军61646部队 图像数据处理系统的资源调度方法及其装置
CN117436679B (zh) * 2023-12-21 2024-03-26 四川物通科技有限公司 一种元宇宙资源匹配方法及其系统
CN117828389A (zh) * 2024-03-05 2024-04-05 深圳市互盟科技股份有限公司 基于智能运维的分布式系统监控方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101686196A (zh) * 2008-09-26 2010-03-31 大唐移动通信设备有限公司 业务调度方法与装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8121618B2 (en) * 2009-10-28 2012-02-21 Digimarc Corporation Intuitive computing methods and systems

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101686196A (zh) * 2008-09-26 2010-03-31 大唐移动通信设备有限公司 业务调度方法与装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于混合权重的软件企业项目优先级评估方法;单晓红,刘晓燕;《计算机应用》;20091101;第3114页-第3119页 *

Also Published As

Publication number Publication date
CN104168318A (zh) 2014-11-26

Similar Documents

Publication Publication Date Title
CN104168318B (zh) 一种资源服务系统及其资源分配方法
CN107888669B (zh) 一种基于深度学习神经网络的大规模资源调度系统及方法
CN110096349B (zh) 一种基于集群节点负载状态预测的作业调度方法
WO2023184939A1 (zh) 基于深度强化学习的云数据中心自适应高效资源分配方法
CN109561148A (zh) 边缘计算网络中基于有向无环图的分布式任务调度方法
CN107168782A (zh) 一种基于Spark与GPU的并行计算系统
CN112416585B (zh) 面向深度学习的gpu资源管理与智能化调度方法
CN103699433B (zh) 一种于Hadoop平台中动态调整任务数目的方法及系统
CN110262897B (zh) 一种基于负载预测的Hadoop计算任务初始分配方法
CN106134136A (zh) 计算针对广域网上的数据传送的长期调度
CN104023042B (zh) 云平台资源调度方法
CN111614754B (zh) 面向雾计算的成本效率优化的动态自适应任务调度方法
CN108170531B (zh) 一种基于深度信念网络的云数据中心请求流调度方法
CN107370799B (zh) 一种混合移动云环境中高能效的多用户在线计算迁移方法
CN110187956B (zh) 一种多智能体平台的分层实时任务调度方法和系统
CN105744006A (zh) 一种面向多类型服务的粒子群优化用户请求调度方法
CN105740059B (zh) 一种面向可分割任务的粒子群调度方法
CN111611062A (zh) 云边协同分层计算方法及云边协同分层计算系统
CN115934333A (zh) 基于历史数据感知的云计算资源调度方法及调度系统
CN113138860A (zh) 消息队列的管理方法及装置
CN112732444A (zh) 一种面向分布式机器学习的数据划分方法
CN114675975B (zh) 一种基于强化学习的作业调度方法、装置及设备
CN113902116A (zh) 一种面向深度学习模型推理批处理优化方法与系统
CN114327811A (zh) 一种任务调度方法、装置、设备及可读存储介质
Wang et al. A throughput driven task scheduler for improving mapreduce performance in job-intensive environments

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant