CN105656973B - 一种分布式节点组内任务调度方法及系统 - Google Patents
一种分布式节点组内任务调度方法及系统 Download PDFInfo
- Publication number
- CN105656973B CN105656973B CN201410691155.4A CN201410691155A CN105656973B CN 105656973 B CN105656973 B CN 105656973B CN 201410691155 A CN201410691155 A CN 201410691155A CN 105656973 B CN105656973 B CN 105656973B
- Authority
- CN
- China
- Prior art keywords
- node
- resource
- task
- group
- scheduling
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000004458 analytical method Methods 0.000 claims abstract description 8
- 239000013598 vector Substances 0.000 claims description 30
- 230000014509 gene expression Effects 0.000 claims description 9
- 238000012423 maintenance Methods 0.000 claims description 2
- 238000010187 selection method Methods 0.000 claims description 2
- 238000005457 optimization Methods 0.000 description 3
- 238000005265 energy consumption Methods 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000009885 systemic effect Effects 0.000 description 1
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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种分布式节点组内的任务调度方法及系统,所述方法包含:步骤101)收集组内各节点的资源状态信息和历史服务信息;步骤102)接收服务请求命令,解析请求命令获得请求的任务;步骤103)根据各节点的资源状态信息和历史状态信息,计算由组内每个节点加载任务后的资源利用率增量和组内各类资源的占用情况;依据使组内各节点的资源利用率增量尽量低和对组内各类资源的占用尽量均衡的原则选择组内的服务执行节点,由选择的服务执行节点提供请求的任务。本发明提出的适用于解决单一任务在多资源约束、包含多服务节点的节点组的情况下的分布式调度方法。
Description
技术领域
本发明的技术方案属于解决分布式环境下任务调度的问题,因此需要考虑资源余量、负载均衡等多种性能指标,适用于分布时环境下的任务调度,具体涉及一种分布式节点组内任务调度方法及系统。
背景技术
目前在许多分布式计算环境中,如云计算、网格计算、P2P网络等,都存在将请求任务在多个可选择节点间如何进行调度和执行的问题。现有的调度类型基于多任务的调度和工作流调度等。
多任务调度是指有多个并发任务共同到达云分布式计算环境,需要进行调度和资源分配,从而满足各个执行节点的负载均衡等要求。常见的有Min-Min算法和Max-Min算法。Min-Min算法首先预测出当前任务队列中每一个任务在各个处理器上的最小完成时间,然后将具有最小完成时间的任务分配给相应的处理器,同时更新相应的处理器的就绪时间,将被分配的任务从任务队列移去,如此重复分配剩余的任务,直至整个任务队列为空。Min-Min算法易出现负载不均衡现象。Max-Min算法与Min-Min算法不同之处在于,在确定了每个任务在各个处理器上的最早完成时间之后,将具有最大的最早完成时间的任务分配给相应的处理器,并及时更新相应的处理器就绪时间,对于剩下的任务进行重复处理。Max-Min算法在负载均衡方面比Min-Min算法有所改善。
另外一类是针对某个工作流内部的多级时序相关子任务的调度算法,从而满足减少总执行时间和能耗等需求。EDTS算法是针对一个任务内部的N步子任务进行最优调度的方法,算法首先预测出各个子任务在所有机器上执行所花费的时间及能耗,然后为这一连串任务设定了总截止时间,在固定的总截止时间下,结合已有的时序关系,找出尽可能节能的子任务分配方式,是针对一个任务进行拆分、调度,实现的是一个任务自身的性能最优。
上述方法大多是通过中心式的服务器进行调度方案的计算和资源分配,然而,在大规模分布式网络中,如大规模计算集群、P2P网络等环境,中心式的计算并不现实,其效率和计算消耗难以满足实时、准实时等应用的需求。
发明内容
本发明提出的适用于解决单一任务在多资源约束、包含多服务节点的节点组的情况下的分布式调度方法。
为了实现上述目的,本发明提供了一种分布式节点组内的任务调度方法,所述方法包含:
步骤101)收集组内各节点的资源状态信息和历史服务信息;
步骤102)接收服务请求命令,解析请求命令获得请求的任务;
步骤103)
根据各节点的资源状态信息和历史状态信息,计算由组内每个节点加载任务后的资源利用率增量和组内各类资源的占用情况;
依据使组内各节点的资源利用率增量尽量低和对组内各类资源的占用尽量均衡的原则选择组内的服务执行节点,由选择的服务执行节点提供请求的任务。
可选的,上述步骤101)进一步包含:
步骤101-1)组内的各节点均维护本节点的资源状态信息和历史服务信息;
步骤101-2)各节点将维护的资源状态信息和历史服务信息传输至调度执行节点,其中,所述调度执行节点用于从组内选择针对一个具体任务的执行节点且该调度执行节点用于接收用户的服务请求命令O。
解析请求命令即根据任务需求的历史服务信息进行计算和估计,获取任务对N种资源的任务需求资源向量O={o1,o2,...,oN};其中,所述历史服务信息包含:每个已执行任务对资源的实际需求和运行时间。
可选的,上述步骤103)进一步包含:
步骤103-1)根据节点的资源状态信息采用如下公式计算组内各节点的资源占用率,其中,节点的资源状态信息包含:节点的可用资源向量和节点已占用的资源向量:
rcj={c1,j,c2,j,...,cN,j}
ci,j=(si,j-soi,j)/si,j
上述rcj表示组内任意一个节点pj当前的资源占用率向量,ci,j表示属于节点pj的第i种资源的占用率;
步骤103-2)计算将任务O分配至节点pj处理的属于本节点的各类资源的占用率;
步骤103-3)计算将任务O加载到节点pj后与加载之前属于本节点的各种资源的占用率的增加量,即求解步骤103-2)得到的资源占用率与步骤103-1)得到的资源占用率的差值,进而得到任务O对组内任意一个节点pj的资源占用率增量向量;
步骤103-4)
根据资源占用率增量向量中的各元素计算节点pj的资源占用影响率;
根据节点pj的不同类型的资源占用率之间的方差,采用如下公式得到节点内资源均衡度σj:
其中,roi,j表示节点pj对任务O进行处理时第i类资源的占用率,N表示一个节点组中所有节点一共可以支持的资源类型总数,i表示任一资源类型;
步骤103-5)将节点组内资源均衡度σj和资源占用影响率μj较小的节点作为执行节点得到执行节点集合PK,具体采用如下公式得到节点集合PK:
PK={pk}=argmin(μj,σj)T,j∈[1,M′]
上述M′表示满足条件的执行节点集合中的节点数目,argmin表示使得μj和σj取得最小值的对应节点;
步骤103-6)从执行节点集合PK中选择一个节点为最终执行节点,再将任务O转发给最终执行节点进行处理。
为了实现上述方法,本发明提供一种分布式节点组内的任务调度系统,所述系统包含:
位于组内各节点的信息汇集模块,用于收集本节点的资源状态信息和历史服务信息;
位于组内调度执行节点上的服务命令接收模块,用于接收服务请求命令,解析请求命令获得请求的任务;
位于组内调度执行节点上的调度处理模块,用于:
根据各节点的资源状态信息和历史状态信息,计算由组内每个节点加载任务后的资源利用率增量和组内各类资源的占用情况;
依据资源利用率增量尽量低和各类资源的占用尽量均衡的原则选择服务执行节点,由服务执行节点提供请求的任务。
可选的,上述信息汇集模块进一步包含:
信息获取子模块,用于获取本节点的资源状态信息和历史服务信息,所述资源状态信息包含节点的可用资源向量和节点已占用的资源向量;
发送子模块,用于将维护的资源状态信息和历史服务信息传输至调度执行节点,其中,所述调度执行节点用于从组内选择针对一个具体任务的执行节点且该调度执行节点用于接收用户的服务请求命令O。
综上所述,本发明的一个节点组由一个或者多个服务执行节点组成,服务执行节点是可提供多种类型服务的服务主体,其中,接收到用户服务请求O的节点为调度执行节点,是节点组的核心,主要承担服务调度决策、计算以及相关工作。在节点组中,每个节点都需要维护本节点的资源状态信息、历史服务信息,并通过一定规则交换给调度执行节点,为调度选择过程做准备。调度执行节点根据所接收到的任务请求的资源需求量,首先计算节点组中每个节点加载该任务后的资源利用率增量,以及不同资源间资源占用情况均衡度,以此作为主要评估准则。之后,进行调度节点选择,选择原则为在满足资源利用率增量尽量低,不同类型资源的占用尽量均衡的情况下,选择合适的节点作为任务执行节点。本发明设计的一种分布式调度算法(即,分布式是指每个节点都可以承担任务执行节点的作用,不需要全局统筹),该算法面向单一任务,在多资源约束和多服务节点的条件下,对任务进行合理的指派,不仅保障执行效率,同时考虑负载均衡、资源利用率等多种因素,从而提高系统的整体服务性能。
与现有技术相比,本发明的技术优势在于:
本发明技术方案提供的算法面向单一任务,在多资源约束和多服务节点的条件下,对任务进行合理的指派,不仅保障执行效率,同时考虑负载均衡、资源利用率等多种因素,从而提高系统的整体服务性能。
附图说明
图1是本发明的调度节点搜索过程示意图;
图2是本发明提供的任务调度方法的流程图。
具体实施方式
下面结合附图对本发明的技术方案进行详细说明。
实施例1
本发明提供一种分布式节点组内任务调度方法,如图2所示:
本发明提出的适用于解决单一任务在多资源约束、多服务节点构成节点组的情况下的分布式调度方法。一个节点组由一个或者多个服务执行节点组成,服务执行节点是可提供多种类型服务的服务主体,其中,接收到用户服务请求O的节点为调度执行节点,是节点组的核心,主要承担服务调度决策、计算以及相关工作。在节点组中,每个节点都需要维护本节点的资源状态信息、历史服务信息,并通过一定规则交换给调度执行节点,为调度选择过程做准备。调度执行节点根据所接收到的任务请求的资源需求量,首先计算节点组中每个节点加载该任务后的资源利用率增量,以及不同资源间资源占用情况均衡度,以此作为主要评估准则。之后,进行调度节点选择,选择原则为在满足资源利用率增量尽量低,不同类型资源的占用尽量均衡的情况下,选择合适的节点作为任务执行节点。
一种分布式节点组内任务调度方法,其执行节点选择步骤如下:
步骤1).假设一个节点组集合P为:P={p1,p2,...,pj,...,pM},将节点组中的任意一个节点pj的可用资源总量表示为:pj={s1,j,s2,j...,sn,j...,sN,j},再将节点pj的已占用资源表示为:poj={so1,j,so2,j,...,soN,j}。
其中,N为一个节点组中所有节点一共可以支持的资源类型总数,sn,j为节点pj保持正常运行时位于该节点上的第n类资源的上限,资源类型包括但不限于:cpu,内存,硬盘;资源的上限值可以是系统上限,也可以是预置上限。
调度执行节点接收到的服务请求命令对应的任务的资源需求向量表示为:O={o1,o2,...,oN},其中oi表示任务请求对节点组中第i类资源的总需求量;任务请求所需资源,可以通过系统预设值,也可以通过历史信息进行计算和估计;所需资源类型包括但不限于:cpu数,内存大小,硬盘大小。
步骤2).通过节点pj在N种不同资源类型上的可用资源总量和占用量,可知节点pj
的N种资源的剩余资源量,并计算得到当前资源占用率向量rcj={c1,j,c2,j,...,cN,j},其
中,第i种资源的占用率为ci,j=(si,j-soi,j)/si,j,如果节点pj对任务O进行处理,则资源的
占用率为roj={r1,j,r2,j,...,rN,j},其中,ri,j=(si,j-soi,j-oi)/si,j。定义δi,j=roi,j-rci,j,
表示任务O加载到节点pj后与加载之前比较第i种资源的占用率的增加量,因此任务O对节
点pj的资源占用率增量向量为Δ={δ1,j,δ2,j,...,δN,j},节点内资源均衡度指
不同类型的资源占用率之间的方差,其中,
步骤3)如果节点pj对任务O进行处理,其第i种资源的占用率ri,j>TRi,则将节点pj从节点组中去除,剩余节点组计算O对节点p′j的资源占用率增量向量为Δ和μj,以及节点内资源均衡度σj.
步骤4)我们的目标是选出均衡度较好,即σj较小,同时资源占用影响较小,即μj较小的点作为执行节点,因此优化目标为选出合适的节点集合PK,使其满足
PK={pk}=argmin(μj,σj}T,j∈[1,M′]
上述问题是一个多目标优化问题,该多目标优化问题,许多方法可以用来得到合适的解,包括:梯度下降法、遗传算法、粒子群算法、蚁群算法,得到一个符合条件的节点集合,从中选择一个节点作为最终决策点,其选择节点的方法可以通过多种选择策略,包括但不限于:随机、以某种概率分布、以某种准则进行选择。本发明实施例仅选用如下一种方法计算合适的解(即求解得到执行节点集合PK)(如图1):
a)定义均衡度搜索步长Δσ=(σmax-σmin)/M′,其中σmax和σmin分别是节点组P’中所有节点对应σ值的最大值和最小值;定义资源占用率增量步长Δμ=(μmax-μmin)/M′,其中μmax和μmin分别是节点组P’中所有节点对应μ值的最大值和最小值。
b)以x∈[μmin,μmax],y∈[σmin,σmax]为搜索空间,进行最优值搜索,初始时x(0)=μmin,y(0)=σmin,t=0;
c)如果没有节点满足μ<<x(t)且p<<y(t),则x(t+1)=x(t)+Δμ,y(t+1)=y(t)+Δσ,t=t+1,循环步骤c);如果有满足条件的节点pk,则将该节点加入符合条件的节点集合PK,形成调度节点,终止上述过程,输出节点集合信息;
通过上述过程得到一个符合条件的节点集合PK,从中选择一个节点pk作为最终决策点,其选择方法可以通过多种选择策略,包括但不限于:随机、以某种概率分布、以某种准则进行选择。
步骤5).经过步骤4),所选出的节点pk即是任务O的最终执行节点,并由调度执行节点将任务O转发给节点pk进行处理。
实施例2
本发明还提供了一种分布式节点组内的任务调度系统,所述系统包含:
位于组内各节点的信息汇集模块,用于收集本节点的资源状态信息和历史服务信息;
位于组内调度执行节点上的服务命令接收模块,用于接收服务请求命令,解析请求命令获得请求的任务;
位于组内调度执行节点上的调度处理模块,用于:
根据各节点的资源状态信息和历史状态信息,计算由组内每个节点加载任务后的资源利用率增量和组内各类资源的占用情况;
依据资源利用率增量尽量低和各类资源的占用尽量均衡的原则选择服务执行节点,由服务执行节点提供请求的任务。
可选的,上述信息汇集模块进一步包含:
信息获取子模块,用于获取本节点的资源状态信息和历史服务信息,所述资源状态信息包含节点的可用资源向量和节点已占用的资源向量;
发送子模块,用于将维护的资源状态信息和历史服务信息传输至调度执行节点,其中,所述调度执行节点用于从组内选择针对一个具体任务的执行节点且该调度执行节点用于接收用户的服务请求命令O。
可选的,信息获取子模块还用于解析请求命令后根据任务需求,获取请求的任务对N种资源的任务需求资源向量O={o1,o2,...,oN}。
进一步可选的,上述调度处理模块进一步包含:
第一处理子模块,用于根据节点的资源状态信息采用如下公式计算节点的资源占用率:
rcj={c1,j,c2,j,...,cN,j}
ci,j=(si,j-soi,j)/si,j
上述rcj表示组内的任意一个节点pj当前的资源占用率向量,ci,j表示属于节点pj的第i种资源的占用率;
第二处理子模块,用于计算将任务O分配至节点pj处理该任务的资源的占用率:
第三处理子模块,用于计算将任务O加载到节点pj后与加载之前第i种资源的占用率的增加量,进而得到任务O对组内任意一个节点pj的资源占用率增量向量;
获取资源占用影响率的子模块,用于根据资源占用率增量向量中的各元素得到节点pj的资源占用影响率;
获取节点内资源均衡度的子模块,用于依据不同类型的资源占用率之间的方差采用如下公式得到节点内资源均衡度σj:
其中,roi,j表示节点pj对任务O进行处理时第i类资源的占用率,N表示一个节点组中所有节点一共可以支持的资源类型总数,i表示任一资源类型;
执行节点集合获取子模块,用于将节点组内资源均衡度σj和资源占用影响率μj较小的点作为执行节点得到执行节点集合PK,具体采用如下公式得到节点集合PK:
PK={pk}=argmin(μj,σj)T,j∈[1,M′]
上述M′表示满足条件的执行节点集合中的节点数目,argmin表示使得μj和σj取得最小值的对应节点;
选择子模块,用于从执行节点集合PK中选择一个节点为最终执行节点,再将任务O转发给最终执行节点进行处理。
上述的资源类型包括:cpu数,内存容量或硬盘容量。
综上所述,本发明提出的适用于解决单一任务在多资源约束、包含多服务节点的节点组的情况下的分布式调度方法。节点组由一个或者多个服务执行节点组成,服务执行节点是可提供多种类型服务的服务主体,其中,接收到用户服务请求O的节点为调度执行节点,是节点组的核心,主要承担服务调度决策、计算以及相关工作。在节点组中,每个节点都需要维护本节点的资源状态信息、历史服务信息,并通过一定规则交换给调度执行节点,为调度选择过程做准备。调度执行节点根据所接收到的任务请求的资源需求量,首先计算节点组中每个节点加载该任务后的资源利用率增量,以及不同资源间资源占用情况均衡度,以此作为主要评估准则。之后,进行调度节点选择,选择原则为在满足资源利用率增量尽量低,不同类型资源的占用尽量均衡的情况下,选择合适的节点作为任务执行节点。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (8)
1.一种分布式节点组内的任务调度方法,所述方法包含:
步骤101)收集组内各节点的资源状态信息和历史服务信息;
步骤102)接收服务请求命令,解析请求命令获得请求的任务;
步骤103)根据各节点的资源状态信息和历史状态信息,计算由组内每个节点加载任务后的资源利用率增量和组内各类资源的占用情况;
依据使组内各节点的资源利用率增量尽量低和对组内各类资源的占用尽量均衡的原则选择组内的服务执行节点,由选择的服务执行节点提供请求的任务;
所述步骤103)进一步包含:
步骤103-1)根据节点的资源状态信息采用如下公式计算组内各节点的资源占用率,其中,节点的资源状态信息包含:节点的可用资源向量和节点已占用的资源向量:
rcj={c1,j,c2,j,…cN,j}
ci,j=(si,j-soi,j)/si,j
上述rcj表示组内任意一个节点pj当前的资源占用率向量,ci,j表示属于节点pj的第i种资源的占用率;
步骤103-2)计算将任务O分配至节点pj处理的属于本节点的各类资源的占用率;
步骤103-3)计算将任务O加载到节点pj后与加载之前属于本节点的各种资源的占用率的增加量,即求解步骤103-2)得到的资源占用率与步骤103-1)得到的资源占用率的差值,进而得到任务O对组内任意一个节点pj的资源占用率增量向量;
步骤103-4)根据资源占用率增量向量中的各元素计算节点pj的资源占用影响率;
根据节点pj的不同类型的资源占用率之间的方差,采用如下公式得到节点内资源均衡度σj:
其中,roi,j表示节点pj对任务O进行处理时第i类资源的占用率,N表示一个节点组中所有节点一共可以支持的资源类型总数,i表示任一资源类型;
步骤103-5)将节点组内资源均衡度σj和资源占用影响率μj最小的节点作为执行节点得到执行节点集合Pk,具体采用如下公式得到节点集合Pk:
Pk={pk}=argmin(μj,σj)T,j∈[1,M′]
上述M′表示满足条件的执行节点集合中的节点数目,argmin表示使得μj和σj取得最小值的对应节点;
步骤103-6)从执行节点集合PK中选择一个节点为最终执行节点,其中选择一个节点的方法包括但不限于:随机、以某种概率分布、以某种准则进行选择,再将任务O转发给最终执行节点进行处理。
2.根据权利要求1所述的分布式节点组内的任务调度方法,其特征在于,所述步骤101)进一步包含:
步骤101-1)组内的各节点均维护本节点的资源状态信息和历史服务信息;
步骤101-2)各节点将维护的资源状态信息和历史服务信息传输至调度执行节点,其中,所述调度执行节点用于从组内选择针对一个具体任务的执行节点且该调度执行节点用于接收用户的服务请求命令。
3.根据权利要求1所述的分布式节点组内的任务调度方法,其特征在于,解析请求命令具体为根据任务需求的历史服务信息进行计算和估计,获取任务O对N种资源的任务需求资源向量{o1,o2,...oN};
其中,所述历史服务信息包含:每个已执行任务对资源的实际需求和运行时间。
4.根据权利要求1所述的分布式节点组内的任务调度方法,其特征在于,采用如下方法求解得到执行节点集合Pk;
步骤1)定义均衡度搜索步长Δσ=(σmax-σmin)/M′,其中σmax和σmin分别是节点组P’中所有节点对应σ值的最大值和最小值;
步骤2)定义资源占用率增量步长Δμ=(μmax-μmin)/M′,其中μmax和μmin分别是节点组P’中所有节点对应μ值的最大值和最小值;
步骤3)以x∈[μmin,μmax],y∈[σmin,σmax]为搜索空间,进行最优值搜索,初始时x(0)=μmin,y(0)=σmin,t=0;
步骤4)如果没有节点满足μ<<x(t)且ρ<<y(t)则x(t+1)=x(t)+Δμ,y(t+1)=y(t)+Δσ,t=t+1,循环步骤4);如果有满足条件的节点pk,则将该节点加入符合条件的节点集合Pk,形成调度节点集合,输出节点集合信息。
5.一种分布式节点组内的任务调度系统,其特征在于,所述系统包含:
位于组内各节点的信息汇集模块,用于收集本节点的资源状态信息和历史服务信息;
位于组内调度执行节点上的服务命令接收模块,用于接收服务请求命令,解析请求命令获得请求的任务;
位于组内调度执行节点上的调度处理模块,用于:
根据各节点的资源状态信息和历史状态信息,计算由组内每个节点加载任务后的资源利用率增量和组内各类资源的占用情况;
依据资源利用率增量尽量低和各类资源的占用尽量均衡的原则选择服务执行节点,由服务执行节点提供请求的任务;
所述调度处理模块进一步包含:
第一处理子模块,用于根据节点的资源状态信息采用如下公式计算组内各节点的资源占用率:
rcj={c1,j,c2,j,…cN,j}
ci,j=(si,j-soi,j)/si,j
上述rcj表示组内任意一个节点pj当前的资源占用率向量,ci,j表示属于节点pj的第i种资源的占用率;
第二处理子模块,用于计算将任务O分配至节点pj处理该任务资源的占用率;
第二处理子模块,用于计算将任务O加载到节点pj后与加载之前第i种资源的占用率的增加量,进而得到任务O对组内任意一个节点pj的资源占用率增量向量;
获取资源占用影响率的子模块,用于根据资源占用率增量向量中的各元素得到节点pj的资源占用影响率;
获取节点内资源均衡度的子模块,用于根据不同类型的资源占用率之间的方差,采用如下公式得到节点内资源均衡度σj:
其中,roi,j表示节点pj对任务O进行处理时第i类资源的占用率,N表示一个节点组中所有节点一共可以支持的资源类型总数,i表示任一资源类型;
执行节点集合获取子模块,用于将节点组内资源均衡度σj和资源占用影响率μj最小的点作为执行节点得到执行节点集合Pk,具体采用如下公式得到节点集合Pk:
Pk={pk}=argmin(μj,σj)T,j∈[1,M′]
上述M′表示满足条件的执行节点集合中的节点数目,argmin表示使得μj和σj取得最小值的对应节点;
选择子模块,用于从执行节点集合PK中选择一个节点为最终执行节点,再将任务O转发给最终执行节点进行处理。
6.根据权利要求5所述的分布式节点组内的任务调度系统,其特征在于,所述信息汇集模块进一步包含:
信息获取子模块,用于获取本节点的资源状态信息和历史服务信息,所述资源状态信息包含节点的可用资源向量和节点已占用的资源向量;
发送子模块,用于将维护的资源状态信息和历史服务信息传输至调度执行节点,其中,所述调度执行节点用于从组内选择针对一个具体任务的执行节点且该调度执行节点用于接收用户的服务请求命令。
7.根据权利要求5所述的分布式节点组内的任务调度系统,其特征在于,信息获取子模块还用于解析请求命令后根据任务需求,获取请求的任务O对N种资源的任务需求资源向量{o1,o2,...oN}。
8.根据权利要求5所述的分布式节点组内的任务调度系统,其特征在于,资源类型包括:cpu数,内存容量或硬盘容量。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410691155.4A CN105656973B (zh) | 2014-11-25 | 2014-11-25 | 一种分布式节点组内任务调度方法及系统 |
US15/528,764 US10474504B2 (en) | 2014-11-25 | 2015-03-12 | Distributed node intra-group task scheduling method and system |
PCT/CN2015/074087 WO2016082370A1 (zh) | 2014-11-25 | 2015-03-12 | 一种分布式节点组内任务调度方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410691155.4A CN105656973B (zh) | 2014-11-25 | 2014-11-25 | 一种分布式节点组内任务调度方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105656973A CN105656973A (zh) | 2016-06-08 |
CN105656973B true CN105656973B (zh) | 2018-11-13 |
Family
ID=56073449
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410691155.4A Expired - Fee Related CN105656973B (zh) | 2014-11-25 | 2014-11-25 | 一种分布式节点组内任务调度方法及系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10474504B2 (zh) |
CN (1) | CN105656973B (zh) |
WO (1) | WO2016082370A1 (zh) |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10437637B1 (en) | 2015-05-26 | 2019-10-08 | Thin CI, Inc. | Configurable scheduler for graph processing on multi-processor computing systems |
US11436045B2 (en) * | 2015-05-26 | 2022-09-06 | Blaize, Inc. | Reduction of a number of stages of a graph streaming processor |
US11150961B2 (en) | 2015-05-26 | 2021-10-19 | Blaize, Inc. | Accelerated operation of a graph streaming processor |
US11379262B2 (en) | 2015-05-26 | 2022-07-05 | Blaize, Inc. | Cascading of graph streaming processors |
CN106055409B (zh) * | 2016-05-31 | 2017-11-14 | 广东欧珀移动通信有限公司 | 一种处理器资源的分配方法及移动终端 |
CN106126323B (zh) * | 2016-06-17 | 2019-11-22 | 广州商品清算中心股份有限公司 | 基于云平台的实时任务调度方法 |
US11036552B2 (en) | 2016-10-25 | 2021-06-15 | International Business Machines Corporation | Cognitive scheduler |
CN106534284A (zh) * | 2016-10-26 | 2017-03-22 | 航天恒星科技有限公司 | 一种分布式系统中资源负载均衡方法及装置 |
CN107092999B (zh) * | 2016-11-08 | 2021-02-26 | 北京星选科技有限公司 | 任务处理方法及装置 |
CN108876074B (zh) * | 2017-05-09 | 2021-06-15 | 国网辽宁省电力有限公司信息通信分公司 | 一种适用于多类资源申请审批的通用调度方法 |
CN107357649B (zh) * | 2017-05-27 | 2020-07-03 | 北京奇艺世纪科技有限公司 | 系统资源部署策略的确定方法、装置及电子设备 |
CN107291553B (zh) * | 2017-06-30 | 2020-05-12 | 电子科技大学 | 一种基于方块拼接的任务调度方法 |
EP3506547A1 (en) * | 2017-12-28 | 2019-07-03 | Flytxt B.V. | Providing security against user collusion in data analytics using random group selection |
CN108449343B (zh) * | 2018-03-21 | 2021-07-09 | 深圳天源迪科信息技术股份有限公司 | Ssh协议文本数据采集方法、采集器及计算机设备 |
CN108776612A (zh) * | 2018-04-11 | 2018-11-09 | 深圳大学 | 一种云计算任务分配方法、装置、设备及存储介质 |
CN108566424B (zh) * | 2018-04-11 | 2021-04-20 | 深圳市腾讯网络信息技术有限公司 | 基于服务器资源消耗预测的调度方法、装置和系统 |
CN110620797B (zh) * | 2018-06-19 | 2022-12-27 | 中移(杭州)信息技术有限公司 | 一种节点交付方法、装置、电子设备及存储介质 |
CN109240820B (zh) * | 2018-07-03 | 2022-09-13 | 深圳市商汤科技有限公司 | 图像处理任务的处理方法及装置、电子设备及存储介质 |
CN108846623B (zh) * | 2018-09-17 | 2021-02-19 | 安吉汽车物流股份有限公司 | 基于多目标蚁群算法的整车物流调度方法及装置、存储介质、终端 |
CN109460345B (zh) * | 2018-09-28 | 2022-02-22 | 北京赛博贝斯数据科技有限责任公司 | 实时数据的计算方法及系统 |
CN109522117A (zh) * | 2018-10-25 | 2019-03-26 | 深圳市圆世科技有限责任公司 | 一种面向异构环境下的链上数据调度系统 |
CN109656685A (zh) * | 2018-12-14 | 2019-04-19 | 深圳市网心科技有限公司 | 容器资源调度方法和系统、服务器及计算机可读存储介质 |
CN111381957B (zh) * | 2018-12-29 | 2023-09-12 | 上海哔哩哔哩科技有限公司 | 面向分布式平台的服务实例精细化调度方法及系统 |
CN110086855B (zh) * | 2019-03-29 | 2021-11-05 | 江苏开拓信息与系统有限公司 | 基于蚁群算法的Spark任务智能感知调度方法 |
CN110347515B (zh) * | 2019-07-17 | 2021-08-03 | 国网四川省电力公司电力科学研究院 | 一种适合边缘计算环境的资源优化分配方法 |
TWI724531B (zh) * | 2019-09-05 | 2021-04-11 | 財團法人資訊工業策進會 | 服務調派設備及方法 |
CN111199360B (zh) * | 2020-01-13 | 2023-05-05 | 西安电子科技大学 | 无人机任务分配规划方法 |
CN112148462B (zh) * | 2020-10-20 | 2023-03-28 | 上海新炬网络信息技术股份有限公司 | 基于Jenkins的CICD流程的处理方法 |
CN112256434B (zh) * | 2020-10-30 | 2024-04-05 | 中国科学院信息工程研究所 | 一种加密数据破解场景中的资源匹配方法 |
CN112565917B (zh) * | 2020-11-26 | 2023-04-07 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种节点选取方法及装置 |
CN112492032B (zh) * | 2020-11-30 | 2022-09-23 | 杭州电子科技大学 | 一种移动边缘环境下的工作流协作调度方法 |
CN112905333B (zh) * | 2021-01-23 | 2024-04-26 | 招商新智科技有限公司 | 用于分布式视频智能分析平台的算力负载调度方法及装置 |
CN112988396A (zh) * | 2021-04-20 | 2021-06-18 | 军事科学院系统工程研究院网络信息研究所 | 一种基于多属性为视频云服务分配计算节点的方法和系统 |
CN117632388A (zh) * | 2022-08-10 | 2024-03-01 | 顺丰科技有限公司 | 任务合并处理方法、装置、设备及计算机可读存储介质 |
CN116708434B (zh) * | 2023-06-16 | 2023-12-22 | 广东红海湾发电有限公司 | 一种同时满足多类型关系数据库的数据交换系统 |
CN117194053A (zh) * | 2023-11-06 | 2023-12-08 | 北京宏数科技有限公司 | 一种基于大数据的云管理方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101447939A (zh) * | 2008-12-16 | 2009-06-03 | 中国移动通信集团北京有限公司 | 一种业务分配方法和负载均衡器 |
CN101753608A (zh) * | 2008-12-09 | 2010-06-23 | 中国移动通信集团公司 | 分布式系统的调度方法及系统 |
CN102591712A (zh) * | 2011-12-30 | 2012-07-18 | 大连理工大学 | 一种云计算中依赖任务的解耦并行调度方法 |
EP2526494A1 (en) * | 2010-01-21 | 2012-11-28 | Qst Holdings LLC | A method and apparatus for a general-purpose, multiple-core system for implementing stream-based computations |
CN103207807A (zh) * | 2012-01-12 | 2013-07-17 | 阿里巴巴集团控股有限公司 | 任务调度方法和装置 |
CN103853618A (zh) * | 2014-03-06 | 2014-06-11 | 南京理工大学 | 基于截止日期驱动的云系统代价最小化资源分配方法 |
CN103941662A (zh) * | 2014-03-19 | 2014-07-23 | 华存数据信息技术有限公司 | 一种基于云计算的任务调度系统和调度方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4292693B2 (ja) * | 2000-07-07 | 2009-07-08 | 株式会社日立製作所 | 計算機資源分割装置および資源分割方法 |
US7403993B2 (en) * | 2002-07-24 | 2008-07-22 | Kasenna, Inc. | System and method for highly-scalable real-time and time-based data delivery using server clusters |
EP2341432A1 (en) * | 2004-03-13 | 2011-07-06 | Adaptive Computing Enterprises, Inc. | System and method of co-allocating a reservation spanning different compute resources types |
US20070266388A1 (en) * | 2004-06-18 | 2007-11-15 | Cluster Resources, Inc. | System and method for providing advanced reservations in a compute environment |
JP4606142B2 (ja) * | 2004-12-01 | 2011-01-05 | 株式会社ソニー・コンピュータエンタテインメント | スケジューリング方法、スケジューリング装置およびマルチプロセッサシステム |
US7984447B1 (en) * | 2005-05-13 | 2011-07-19 | Oracle America, Inc. | Method and apparatus for balancing project shares within job assignment and scheduling |
US8555288B2 (en) * | 2006-05-17 | 2013-10-08 | Teradata Us, Inc. | Managing database utilities to improve throughput and concurrency |
US8122441B2 (en) * | 2008-06-24 | 2012-02-21 | International Business Machines Corporation | Sharing compiler optimizations in a multi-node system |
CN104901989B (zh) * | 2014-03-07 | 2018-08-14 | 中国科学院声学研究所 | 一种现场服务提供系统及方法 |
CN104102544B (zh) | 2014-06-30 | 2018-08-03 | 武汉理工大学 | 混合云环境下多QoS约束的并行任务调度成本优化方法 |
-
2014
- 2014-11-25 CN CN201410691155.4A patent/CN105656973B/zh not_active Expired - Fee Related
-
2015
- 2015-03-12 US US15/528,764 patent/US10474504B2/en active Active
- 2015-03-12 WO PCT/CN2015/074087 patent/WO2016082370A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101753608A (zh) * | 2008-12-09 | 2010-06-23 | 中国移动通信集团公司 | 分布式系统的调度方法及系统 |
CN101447939A (zh) * | 2008-12-16 | 2009-06-03 | 中国移动通信集团北京有限公司 | 一种业务分配方法和负载均衡器 |
EP2526494A1 (en) * | 2010-01-21 | 2012-11-28 | Qst Holdings LLC | A method and apparatus for a general-purpose, multiple-core system for implementing stream-based computations |
CN102591712A (zh) * | 2011-12-30 | 2012-07-18 | 大连理工大学 | 一种云计算中依赖任务的解耦并行调度方法 |
CN103207807A (zh) * | 2012-01-12 | 2013-07-17 | 阿里巴巴集团控股有限公司 | 任务调度方法和装置 |
CN103853618A (zh) * | 2014-03-06 | 2014-06-11 | 南京理工大学 | 基于截止日期驱动的云系统代价最小化资源分配方法 |
CN103941662A (zh) * | 2014-03-19 | 2014-07-23 | 华存数据信息技术有限公司 | 一种基于云计算的任务调度系统和调度方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105656973A (zh) | 2016-06-08 |
US20170329643A1 (en) | 2017-11-16 |
US10474504B2 (en) | 2019-11-12 |
WO2016082370A1 (zh) | 2016-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105656973B (zh) | 一种分布式节点组内任务调度方法及系统 | |
CN107273209B (zh) | 基于最小生成树聚类改进遗传算法的Hadoop任务调度方法 | |
WO2021104096A1 (zh) | 容器云环境下的任务调度方法、装置、服务器及存储装置 | |
CN103729246B (zh) | 一种任务调度方法和装置 | |
CN105159762B (zh) | 基于贪心策略的启发式云计算任务调度方法 | |
CN102780759B (zh) | 基于调度目标空间的云计算资源调度方法 | |
CN106951330A (zh) | 一种云服务中心服务效用最大化的虚拟机分配方法 | |
CN109491761A (zh) | 基于eda-ga混合算法的云计算多目标任务调度方法 | |
CN103401939A (zh) | 一种采用混合调度策略的负载均衡方法 | |
CN104065745A (zh) | 云计算动态资源调度系统和方法 | |
CN104331321A (zh) | 基于禁忌搜索和负载均衡的云计算任务调度方法 | |
CN108170530B (zh) | 一种基于混合元启发式算法的Hadoop负载均衡任务调度方法 | |
Das et al. | A computer simulation approach to evaluating assembly line balancing with variable operation times | |
CN110308967A (zh) | 一种基于混合云的工作流成本-延迟最优化任务分配方法 | |
CN106557471A (zh) | 任务调度方法及装置 | |
CN106371924B (zh) | 一种最小化MapReduce集群能耗的任务调度方法 | |
CN104917839A (zh) | 一种用于云计算环境下的负载均衡方法 | |
CN108427602B (zh) | 一种分布式计算任务的协同调度方法及装置 | |
CN112685138B (zh) | 云环境下基于多种群混合智能优化的多工作流调度方法 | |
Patra et al. | Game theoretic approach for real-time task scheduling in cloud computing environment | |
CN105005503A (zh) | 基于元胞自动机的云计算负载均衡任务调度方法 | |
CN104869154A (zh) | 统筹资源可信度与用户满意度的分布式资源调度方法 | |
CN108958919A (zh) | 一种云计算中有期限约束的多dag任务调度费用公平性评估模型 | |
Ananth et al. | Cooperative game theoretic approach for job scheduling in cloud computing | |
Wu et al. | A genetic-ant-colony hybrid algorithm for task scheduling in cloud system |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20181113 |
|
CF01 | Termination of patent right due to non-payment of annual fee |