CN104158860B - 一种作业调度方法及作业调度系统 - Google Patents

一种作业调度方法及作业调度系统 Download PDF

Info

Publication number
CN104158860B
CN104158860B CN201410373085.8A CN201410373085A CN104158860B CN 104158860 B CN104158860 B CN 104158860B CN 201410373085 A CN201410373085 A CN 201410373085A CN 104158860 B CN104158860 B CN 104158860B
Authority
CN
China
Prior art keywords
server
child servers
data block
task
server cluster
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
CN201410373085.8A
Other languages
English (en)
Other versions
CN104158860A (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.)
Shenzhen Cloud Computing Center Co Ltd
NATIONAL SUPERCOMPUTING CENTER IN SHENZHEN (SHENZHEN CLOUD COMPUTING CENTER)
Original Assignee
Shenzhen Cloud Computing Center Co Ltd
NATIONAL SUPERCOMPUTING CENTER IN SHENZHEN (SHENZHEN CLOUD COMPUTING CENTER)
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 Shenzhen Cloud Computing Center Co Ltd, NATIONAL SUPERCOMPUTING CENTER IN SHENZHEN (SHENZHEN CLOUD COMPUTING CENTER) filed Critical Shenzhen Cloud Computing Center Co Ltd
Priority to CN201410373085.8A priority Critical patent/CN104158860B/zh
Publication of CN104158860A publication Critical patent/CN104158860A/zh
Application granted granted Critical
Publication of CN104158860B publication Critical patent/CN104158860B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种作业调度方法及作业调度系统。所述作业调度系统包括作业提交设备、以及由主服务器及多个子服务器组成的服务器集群。所述主服务器用于接收到服务器集群中任意一台子服务器M针对待处理作业队列中的第j个作业提交的任务处理请求并判断该台子服务器M并非第j个作业的本地服务器时,基于资源预估模型量化计算一个数据块传输周期T内服务器集群中第j个作业的本地服务器向第j个作业发起的任务处理请求次数Ej。所述主服务器还用于判断该任务处理请求次数Ej低于一次时,将第j个作业的处理任务分配到子服务器M,或者判断该任务处理请求次数Ej达到或超过一次时,执行第j个作业的延时调度工作。本发明可极大提高整体作业的调度效率。

Description

一种作业调度方法及作业调度系统
技术领域
本发明涉及任务分配技术领域,更具体地说,涉及一种作业调度方法及作业调度系统。
背景技术
为提高作业的本地数据资源获取水平,缩短单个作业的执行时间,静态延迟调度方法得到了广泛使用。然而,静态延迟调度方法还存在如下缺陷:
1)为确保用户提交的作业获取到本地数据资源,提高单个作业的执行效率,在作业未获取到来自本地数据资源的处理请求的情况下,需要进行作业的延时调度处理,导致作业难以在预定时间内执行完毕。
2)采用静态延迟调度方法在提高单个作业的执行效率的同时,降低了整体作业的执行效率。
因此,如何克服静态延迟调度方法所存在的上述缺陷,开发一款兼顾单个作业的执行效率及整体作业的执行效率的作业调度方法已成为亟待解决的问题。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种能兼顾单个作业的执行效率及整体作业的执行效率的作业调度方法及作业调度系统。
本发明解决其技术问题所采用的技术方案是:构造一种作业调度方法,包括如下步骤:
S1)在接收到由服务器集群中任意一台子服务器M针对待处理作业队列中的第j个作业提交的任务处理请求时,判断该台子服务器M是否为第j个作业的本地服务器;M为变量,j为递增变量,M≥1,j≥1,且M、j均为正整数;
S2)如判断子服务器M并非第j个作业的本地服务器,则基于资源预估模型量化计算一个数据块传输周期T内服务器集群中第j个作业的本地服务器针对第j个作业发起的任务处理请求次数Ej
S3)判断该任务处理请求次数Ej是否达到或超过一次;如判断Ej<1,则响应由子服务器M提交的第j个作业的任务处理请求,将第j个作业的处理任务分配到子服务器M;如判断Ej≥1,则执行第j个作业的延时调度工作。
在本发明上述作业调度方法中,在所述步骤S1之前还包括如下步骤:
S0)指定服务器集群中用于执行作业受理及分配工作的主服务器,通过该主服务器接收用户通过作业提交终端提交的作业,并将作业添加到待处理作业队列。
在本发明上述作业调度方法中,所述步骤S0还包括:根据作业的提交时间确定待处理作业队列中各个作业的优先级,依照各个作业的优先级对待处理队列中的各个作业进行排序,以确定各个作业的处理顺序。
在本发明上述作业调度方法中,所述步骤S1中所述判断子服务器M是否为第j个作业的本地服务器的步骤包括:通过主服务器接收服务器集群中除其之外的任意一台子服务器M针对第j个作业发起的任务处理请求,遍历待处理作业队列,读取待处理作业队列中的第j个作业,并判断子服务器M是否存储有用于处理第j个作业所需的数据块;
如判断子服务器M存储有用于处理第j个作业所需的数据块,则判定子服务器M为第j个作业的本地服务器;
如判断子服务器M未存储有用于处理第j个作业所需的数据块,则判定子服务器M为非第j个作业的本地服务器。
在本发明上述作业调度方法中,所述步骤S1还包括:如判断子服务器M为本地服务器,则响应由子服务器M提交的第j个作业的任务处理请求,将第j个作业的处理任务分配到子服务器M。
在本发明上述作业调度方法中,所述步骤S1还包括在将第j个作业的处理任务分配到子服务器M之后所进行的第j个作业的处理步骤,所述第j个作业的处理步骤包括:
子服务器M查找服务器集群中第j个作业的本地服务器,拷贝由该本地服务器存储的用于处理第j个作业所需的数据块,并依照第j个作业对拷贝的数据块进行处理,以将第j个作业执行完毕。
在本发明上述作业调度方法中,所述步骤S2中用于计算一个数据块传输周期T内服务器集群中第j个作业的本地服务器针对第j个作业所提交的任务处理请求次数Ej的资源预估模型如下所示:
Ej=T×(N/THeat)×Slotavg×Pslot×Pj LocalData×Pj Compete;其中
N表示服务器集群中的所有子服务器的数目;
THeat表示服务器集群中子服务器的任务处理请求提交周期;
Slotavg表示每个子服务器在提交任务处理请求时提供的平均时槽数目;
Pslot表示每个子服务器提供的时槽中空闲时槽的概率;
Pj LocalData表示服务器集群中请求处理第j个作业的子服务器为第j个作业的本地服务器的概率;
Pj Compete表示服务器集群中第j个作业的竞争服务器数目占服务器集群中第j个作业的本地服务器数目的百分比;
其中,Pslot的计算公式如下所示:
Pslot=Tavg/THeat
Tavg表示执行一个映射任务所需时间;
Pj LocalData的计算公式如下所示:
Pj LocalData=Nodesj/N;
Nodesj表示服务器集群中存储有用于处理第j个作业所需数据块的子服务器的数目,即第j个作业的本地服务器的数目;
N表示服务器集群中的所有子服务器(202)的数目;
Pj Compete的计算公式如下所示:
Pj Compete=Nodesj Ahead/Nodesj
其中,Nodesj Ahead表示服务器集群中存储有第j个作业的竞争数据块的竞争服务器的数目;
第j个作业的竞争数据块定义为:用于处理第j个作业以及主服务器的待处理作业队列中优先级高于第j个作业的其它作业所需的同一个数据块;
竞争服务器定义为:服务器集群中存储有所述竞争数据块的子服务器。
在本发明上述作业调度方法中,所述步骤S3中所述执行第j个作业的延时调度工作的步骤包括:拒绝由子服务器M提交的针对第j个作业的当前的任务处理请求,并将第j个作业分配到下一个数据块传输周期T内向主服务器请求处理第j个作业的任意一台子服务器M′;M′为变量,M′≥1,且M′为正整数。
在本发明上述作业调度方法中,所述步骤S3还包括第j个作业的处理步骤,所述第j个作业的处理步骤包括:
子服务器M查找服务器集群中第j个作业的本地服务器,拷贝该本地服务器存储的用于处理第j个作业所需的数据块,并依照第j个作业对该拷贝的数据块进行处理,以将第j个作业执行完毕;
或者子服务器M′调取其存储的用于处理第j个作业所需的数据块,并依照第j个作业对该拷贝的数据块进行处理,以将第j个作业执行完毕。
在本发明上述作业调度方法中,在所述步骤S3之后还包括如下步骤:
S4)接收服务器集群中任意一台子服务器M提交的针对第(j+1)个作业的任务处理请求,并依照所述步骤S1至所述步骤S3执行第(j+1)个作业的调度工作;
重复执行步骤S4,直至待处理作业队列中的所有作业均已调度完毕。
本发明还构造一种作业调度系统,所述作业调度系统包括作业提交设备、以及由主服务器及多个子服务器组成的服务器集群,所述主服务器可接收由所述作业提交设备提交的作业,并将作业添加到待处理作业队列,所述主服务器还用于接收到由服务器集群中任意一台子服务器M针对待处理作业队列中的第j个作业提交的任务处理请求并判断该台子服务器M并非第j个作业的本地服务器时,基于资源预估模型量化计算一个数据块传输周期T内服务器集群中第j个作业的本地服务器向第j个作业发起的任务处理请求次数Ej
所述主服务器还用于判断该任务处理请求次数Ej低于一次时,将第j个作业的处理任务分配到子服务器M,或者判断该任务处理请求次数Ej达到或超过一次时,执行第j个作业的延时调度工作。
在本发明上述作业调度系统中,所述资源预估模型如下所示:
Ej=T×(N/THeat)×Slotavg×Pslot×Pj LocalData×Pj Compete;其中
N表示服务器集群中的所有子服务器的数目;
THeat表示服务器集群中子服务器的任务处理请求提交周期;
Slotavg表示每个子服务器在提交任务处理请求时提供的平均时槽数目;
Pslot表示每个子服务器提供的时槽中空闲时槽的概率;
Pj LocalData表示服务器集群中请求处理第j个作业的子服务器为第j个作业的本地服务器的概率;
Pj Compete表示服务器集群中第j个作业的竞争服务器数目占服务器集群中第j个作业的本地服务器数目的百分比;
其中,Pslot的计算公式如下所示:
Pslot=Tavg/THeat
Tavg表示执行一个映射任务所需时间;
Pj LocalData的计算公式如下所示:
Pj LocalData=Nodesj/N;
Nodesj表示服务器集群中存储有用于处理第j个作业所需数据块的子服务器的数目,即第j个作业的本地服务器的数目;
N表示服务器集群中的所有子服务器(202)的数目;
Pj Compete的计算公式如下所示:
Pj Compete=Nodesj Ahead/Nodesj
其中,Nodesj Ahead表示服务器集群中存储有第j个作业的竞争数据块的竞争服务器的数目;
第j个作业的竞争数据块定义为:用于处理第j个作业以及主服务器的待处理作业队列中优先级高于第j个作业的其它作业所需的同一个数据块;
竞争服务器定义为:服务器集群中存储有所述竞争数据块的子服务器。
由于本发明作业调度方法及作业调度系统采用了通过主服务器对作业队列中的各个作业在数据块传输周期T内可获取到的本地数据资源进行量化计算,并根据量化计算结果对作业队列中的各个作业进行合理调度的技术方案,所以克服了现有技术中使用静态延时调度方法执行作业调度工作时,用户提交的作业通常不能在预定期限内执行完毕,进而拖累到整体作业的执行效率的缺陷,实现了在整个作业调度过程中,确保单个作业的调度效率的同时,提高本发明作业调度系统整体作业的调度效率的目的。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明较佳实施例提供的作业调度系统的结构示意图;
图2是图1所示的作业调度系统的主服务器的结构框图;
图3是本发明较佳实施方式提供的作业调度方法的流程图。
具体实施方式
为了解决现有技术中所采用的静态延时调度方法使得用户提交作业通常不能在预定期限内执行完毕,导致整体作业的执行效率低下的缺陷,本发明的主要创新点在于:
1)在服务器集群200中指定一台专门用于作业受理及分配工作的主服务器201,该主服务器201在接收到子服务器M针对待处理作业队列中的第j个作业发起的任务处理请求,且子服务器M并非第j个作业的本地服务器时,基于资源预估模型对于一个数据块传输周期T内第j个作业可获取到的来自其本地服务器的任务处理请求次数Ej进行量化计算,并根据计算所得任务处理请求次数Ej对第j个作业的处理任务进行合理分配;
2)本发明中使用的资源预估模型充分考虑了作业队列中优先级不同的各个作业“争抢”服务器集群200数据资源的情况,即作业队列中优先级高于第j个作业的其它作业请求获取的数据块为第j个作业的本地数据块的情况,提高了主服务器201的作业调度工作的准确率。
由于本发明采用了通过主服务器201对作业队列中的各个作业在数据块传输周期T内可获取到的本地数据资源进行量化计算,并根据量化计算结果对作业队列中的各个作业进行合理调度的设计,所以解决了现有技术所采用的静态延时调度方法为提高单个作业的执行效率,致使用户提交作业通常不能在预定期限内执行完毕,进而拖累到整体作业的执行效率的技术问题,实现了在整个作业调度过程中,确保单个作业的调度效率的同时,提高本发明作业调度系统整体作业的执行效率的目的。
为了使本发明的目的更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
如图1所示,本发明作业调度系统包括作业提交设备100、以及由主服务器201及多个子服务器202组成的服务器集群200。
其中,主服务器201用于接收用户通过作业提交设备100提交的作业,将作业添加到待处理作业队列。
主服务器201还用于接收到服务器集群200中任意一台子服务器M针对待处理作业队列中的第j个作业提交的任务处理请求,并判断该台子服务器M并非第j个作业的本地服务器时,基于资源预估模型计算一个数据块传输周期T内服务器集群200中第j个作业的本地服务器向第j个作业发起的任务处理请求次数Ej
主服务器201还用于判断该任务处理请求次数Ej是否低于一次。如该任务处理请求次数低于一次,则主服务器201将第j个作业的处理任务分配到子服务器M。如该任务处理请求次数Ej达到或超过一次时,则主服务器201执行第j个作业的延时调度工作。
该主服务器201在待处理作业队列中的所有作业均已分配完毕时,停止执行作业调度工作。
在本发明中,作业提交设备100可以是包括电脑、手机在内的各种计算设备。M、j均为变量,j为递增变量,M≥1,j≥1,且M、j均为正整数。
如图2所示,本发明的主服务器201包括任务分配模块2022、与该任务分配模块2022分别电连接的接收模块2011、存储模块2023,且该接收模块2011分别连接作业提交设备100及多个子服务器202。
其中,该接收模块2011用于接收用户通过作业提交设备100提交的作业,将作业输入任务分配模块2022。
该任务分配模块2022用于将作业添加到待处理作业队列,根据作业提交时间确定各个作业的优先级,根据作业优先级对待处理作业队列中的各个作业进行排序,以确定各个作业的先后处理顺序。
该存储模块2023用于存储待处理作业队列。
该接收模块2011还用于接收服务器集群200中的任意一台子服务器M针对第j个作业发起的任务处理请求。
该任务分配模块2022还用于判断子服务器M为第j个作业的本地服务器时,将第j个作业分配到子服务器M。
该任务分配模块2022还用于判断子服务器M并非第j个作业的本地服务器时,基于资源预估模型计算一个数据块传输周期T内服务器集群200中第j个作业的本地服务器向第j个作业发起的任务处理请求次数Ej
该任务分配模块2022还用于判断该任务处理请求次数Ej低于一次时,将第j个作业分配到子服务器M,或者判断该任务处理请求次数Ej达到或超过一次时,将第j个作业分配到下一个数据块传输周期T内向主服务器201请求处理第j个作业的任意一台子服务器M′。
在本发明中,用于计算一个数据块传输周期T内服务器集群200中第j个作业的本地服务器针对第j个作业所提交的任务处理请求次数Ej的资源预估模型如下所示:
Ej=T×(N/THeat)×Slotavg×Pslot×Pj LocalData×Pj Compete;其中
N表示服务器集群200中的所有子服务器202的数目;
THeat表示服务器集群200中子服务器202针对主服务器201的任务处理请求提交周期;
Slotavg表示每个子服务器202在提交任务处理请求时提供的平均时槽数目;
Pslot表示每个子服务器202提供的时槽中空闲时槽的概率;
Pj LocalData表示服务器集群200中请求处理第j个作业的子服务器202为第j个作业的本地服务器的概率;
Pj Compete表示服务器集群200中第j个作业的竞争服务器数目占服务器集群200中第j个作业的本地服务器数目的百分比。
上述资源预估模型中的Pslot的计算公式如下所示:
Pslot=Tavg/THeat;其中
Tavg表示执行一个映射任务需要的时间。
上述资源预估模型中的Pj LocalData的计算公式如下所示:
Pj LocalData=Nodesj/N;其中
Nodesj表示服务器集群200中存储有用于处理第j个作业所需数据块的子服务器202的数目,即第j个作业的本地服务器的数目;
N表示服务器集群200中的所有子服务器202的数目。
上述资源预估模型中的Pj Compete的计算公式如下所示:
Pj Compete=Nodesj Ahead/Nodesj;其中
Nodesj Ahead表示服务器集群200中存储有第j个作业的竞争数据块的竞争服务器的数目。其中,第j个作业的竞争数据块定义为:用于处理第j个作业以及主服务器201的待处理作业队列中优先级高于第j个作业的其它作业所需的同一个数据块。竞争服务器定义为:服务器集群200中存储有所述竞争数据块的子服务器202。
下面将以本发明的较佳实施方式为例对本发明的作业调度方法进行说明:
如图3所示,在步骤S101中,本发明作业调度系统管理人员指定服务器集群200中的一台服务器作为主服务器201,通过主服务器201接收用户通过作业提交设备100提交的作业,将作业添加到待处理作业队列,并依照作业提交时间确定待处理作业队列中各个作业的优先级,依照作业的优先级对待处理作业队列中的作业进行排序,以确定各个作业的先后处理顺序。
在步骤S102中,主服务器201通过接收模块2011接收到服务器集群200中的任意一台子服务器M针对第j个作业发起的任务处理请求,遍历待处理作业队列,读取第j个作业。
在步骤S103中,主服务器201判断子服务器M是否为第j个作业的本地服务器。如子服务器M为第j个作业的本地服务器,则执行步骤S104,否则,执行步骤S105。
在步骤S104中,主服务器201将第j个作业分配到子服务器M,由子服务器M对第j个作业进行处理。第j个作业的处理过程如下所示:子服务器M查找服务器集群200中第j个作业的本地服务器,拷贝由该本地服务器存储的用于处理第j个作业所需的数据块,并依照第j个作业对拷贝的数据块进行处理,以将第j个作业执行完毕。
在步骤S105中,主服务器201根据资源预估模型计算一个数据块传输周期T内服务器集群200中由第j个作业的本地服务器针对第j个作业发起的任务处理请求次数Ej。其中,该资源预估模型如下所示:
Ej=T×(N/THeat)×Slotavg×Pslot×Pj LocalData×Pj Compete
在步骤S106中,主服务器201判断该任务处理请求次数Ej是否达到或超过一次。如该任务处理请求次数Ej低于一次,则表示在下一个数据块传输周期T内服务器集群200中第j个作业的本地服务器针对第j个作业提交的任务处理请求次数低于一次。换言之,就第j个作业的任务分配执行效率而言,主服务器201接收到第j个作业的本地服务器针对第j个作业发起的任务处理请求所需的等待时间必定超过子服务器M从其它子服务器202拷贝第j个作业所需本地数据块的时间(即一个数据块的传输周期T)。故在步骤S106中,为提高主服务器201的任务分配效率,当主服务器201判断该任务处理请求次数Ej低于一次时,返回步骤S104,并在步骤S104执行完毕时进入步骤S108。
如该任务处理请求次数Ej达到或超过一次,则表示在下一个数据块传输周期T内服务器集群200中第j个作业的本地服务器针对第j个作业提交的任务处理请求次数达到或超过一次。换言之,就第j个作业的任务分配执行效率而言,主服务器201接收到第j个作业的本地服务器针对第j个作业发起的任务处理请求所需的等待时间不会超过子服务器M从其它子服务器202拷贝第j个作业所需本地数据块的时间(即一个数据块的传输周期T)。故在步骤S106中,为提高主服务器201的任务分配效率,当主服务器201判断该任务处理请求次数Ej达到或超过一次时,执行下一步骤S107。
在步骤S107中,主服务器201通过任务分配模块2022执行第j个作业的延时调度工作(即将第j个作业分配到下一个数据块传输周期T内服务器集群200中向第j个作业发起任务处理请求的任意一台子服务器M′;其中,M′为变量,M′≥1,且M′为正整数)。
在步骤S108中,主服务器201依照上述步骤S202至步骤S207循坏执行第(j+1)个作业(即主服务器201的待处理作业队列中优先级低于第j个作业的下一个作业)的调度工作。需要说明的是,在本发明中,j为变量,j≥1,且j为正整数,主服务器201每完成第j个作业的任务调度工作,j的值递增1。
在步骤S109中,主服务器201判断待处理作业队列中的所有作业是否均已分配完毕。如待处理队列中存在尚未调度的作业,则返回步骤S108,否则,执行下一步骤S110。
在步骤S110中,主服务器201停止执行待处理作业队列中的作业调度工作。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种作业调度方法,其特征在于,包括如下步骤:
S1)在接收到由服务器集群(200)中任意一台子服务器M针对待处理作业队列中的第j个作业提交的任务处理请求时,判断该台子服务器M是否为第j个作业的本地服务器;M为变量,j为递增变量,M≥1,j≥1,且M、j均为正整数;
S2)如判断子服务器M并非第j个作业的本地服务器,则基于资源预估模型量化计算一个数据块传输周期T内服务器集群(200)中第j个作业的本地服务器针对第j个作业发起的任务处理请求次数Ej
S3)判断该任务处理请求次数Ej是否达到或超过一次;如判断Ej<1,则响应由子服务器M提交的第j个作业的任务处理请求,将第j个作业的处理任务分配到子服务器M;如判断Ej≥1,转而执行第j个作业的延时调度工作;
其中,所述步骤S2中用于计算一个数据块传输周期T内服务器集群(200)中第j个作业的本地服务器针对第j个作业所提交的任务处理请求次数Ej的资源预估模型如下所示:
Ej=T×(N/THeat)×Slotavg×Pslot×Pj LocalData×Pj Compete
其中,N表示服务器集群(200)中的所有子服务器(202)的数目;
THeat表示服务器集群(200)中子服务器(202)的任务处理请求提交周期;
Slotavg表示每个子服务器(202)在提交任务处理请求时提供的平均时槽数目;
Pslot表示每个子服务器(202)提供的时槽中空闲时槽的概率;
Pj LocalData表示服务器集群(200)中请求处理第j个作业的子服务器(202)为第j个作业的本地服务器的概率;
Pj Compete表示服务器集群(200)中第j个作业的竞争服务器数目占服务器集群(200)中第j个作业的本地服务器数目的百分比;
其中,Pslot的计算公式如下所示:
Pslot=Tavg/THeat
Tavg表示执行一个映射任务所需时间;
Pj LocalData的计算公式如下所示:
Pj LocalData=Nodesj/N;
Nodesj表示服务器集群(200)中存储有用于处理第j个作业所需数据块的子服务器(202)的数目,即第j个作业的本地服务器的数目;
N表示服务器集群(200)中的所有子服务器(202)的数目;
Pj Compete的计算公式如下所示:
Pj Compete=Nodesj Ahead/Nodesj
其中,Nodesj Ahead表示服务器集群(200)中存储有第j个作业的竞争数据块的竞争服务器的数目;
第j个作业的竞争数据块定义为:用于处理第j个作业以及主服务器(201)的待处理作业队列中优先级高于第j个作业的其它作业所需的同一个数据块;
竞争服务器定义为:服务器集群(200)中存储有所述竞争数据块的子服务器(202)。
2.根据权利要求1所述的作业调度方法,其特征在于,在所述步骤S1之前还包括如下步骤:
S0)指定服务器集群(200)中用于执行作业受理及分配工作的主服务器(201),通过该主服务器(201)接收用户通过作业提交终端提交的作业,并将作业添加到待处理作业队列。
3.根据权利要求2所述的作业调度方法,其特征在于,所述步骤S0还包括:根据作业的提交时间确定待处理作业队列中各个作业的优先级,依照各个作业的优先级对待处理队列中的各个作业进行排序,以确定各个作业的处理顺序。
4.根据权利要求3所述的作业调度方法,其特征在于,所述步骤S1中所述判断子服务器M是否为第j个作业的本地服务器的步骤包括:通过主服务器(201)接收服务器集群(200)中除其之外的任意一台子服务器M针对第j个作业发起的任务处理请求,遍历待处理作业队列,读取待处理作业队列中的第j个作业,并判断子服务器M是否存储有用于处理第j个作业所需的数据块;
如判断子服务器M存储有用于处理第j个作业所需的数据块,则判定子服务器M为第j个作业的本地服务器;
如判断子服务器M未存储有用于处理第j个作业所需的数据块,则判定子服务器M为非第j个作业的本地服务器。
5.根据权利要求4所述的作业调度方法,其特征在于,所述步骤S1还包括:如判断子服务器M为本地服务器,则响应由子服务器M提交的第j个作业的任务处理请求,将第j个作业的处理任务分配到子服务器M。
6.根据权利要求5所述的作业调度方法,其特征在于,所述步骤S1还包括在将第j个作业的处理任务分配到子服务器M之后所进行的第j个作业的处理步骤,所述第j个作业的处理步骤包括:
子服务器M查找服务器集群(200)中第j个作业的本地服务器,拷贝由该本地服务器存储的用于处理第j个作业所需的数据块,并依照第j个作业对拷贝的数据块进行处理,以将第j个作业执行完毕。
7.根据权利要求1所述的作业调度方法,其特征在于,所述步骤S3中所述执行第j个作业的延时调度工作的步骤包括:拒绝由子服务器M提交的针对第j个作业的当前的任务处理请求,并将第j个作业分配到下一个数据块传输周期T内向主服务器(201)请求处理第j个作业的任意一台子服务器M′;M′为变量,M′≥1,且M′为正整数。
8.根据权利要求7所述的作业调度方法,其特征在于,所述步骤S3还包括第j个作业的处理步骤,所述第j个作业的处理步骤包括:
子服务器M查找服务器集群(200)中第j个作业的本地服务器,拷贝该本地服务器存储的用于处理第j个作业所需的数据块,并依照第j个作业对该拷贝的数据块进行处理,以将第j个作业执行完毕;
或者子服务器M′调取其存储的用于处理第j个作业所需的数据块,并依照第j个作业对该拷贝的数据块进行处理,以将第j个作业执行完毕。
9.根据权利要求8所述的作业调度方法,其特征在于,在所述步骤S3之后还包括如下步骤:
S4)接收服务器集群(200)中任意一台子服务器M提交的针对第(j+1)个作业的任务处理请求,并依照所述步骤S1至所述步骤S3执行第(j+1)个作业的调度工作;
重复执行步骤S4,直至待处理作业队列中的所有作业均已调度完毕。
10.一种采用如权利要求1至9中任意一项所述的作业调度方法的作业调度系统,所述作业调度系统包括作业提交设备(100)、以及由主服务器(201)及多个子服务器(202)组成的服务器集群(200),所述主服务器(201)可接收由所述作业提交设备(100)提交的作业,并将作业添加到待处理作业队列,其特征在于:
所述主服务器(201)还用于接收到由服务器集群(200)中任意一台子服务器M针对待处理作业队列中的第j个作业提交的任务处理请求并判断该台子服务器M并非第j个作业的本地服务器时,基于资源预估模型量化计算一个数据块传输周期T内服务器集群(200)中第j个作业的本地服务器向第j个作业发起的任务处理请求次数Ej
所述主服务器(201)还用于判断该任务处理请求次数Ej低于一次时,将第j个作业的处理任务分配到子服务器M,或者判断该任务处理请求次数Ej达到或超过一次时,执行第j个作业的延时调度工作;
其中,所述资源预估模型如下所示:
Ej=T×(N/THeat)×Slotavg×Pslot×Pj LocalData×Pj Compete;其中
N表示服务器集群(200)中的所有子服务器(202)的数目;
THeat表示服务器集群(200)中子服务器(202)的任务处理请求提交周期;
Slotavg表示每个子服务器(202)在提交任务处理请求时提供的平均时槽数目;
Pslot表示每个子服务器(202)提供的时槽中空闲时槽的概率;
Pj LocalData表示服务器集群(200)中请求处理第j个作业的子服务器(202)为第j个作业的本地服务器的概率;
Pj Compete表示服务器集群(200)中第j个作业的竞争服务器数目占服务器集群(200)中第j个作业的本地服务器数目的百分比;
其中,Pslot的计算公式如下所示:
Pslot=Tavg/THeat
Tavg表示执行一个映射任务所需时间;
Pj LocalData的计算公式如下所示:
Pj LocalData=Nodesj/N;
Nodesj表示服务器集群(200)中存储有用于处理第j个作业所需数据块的子服务器(202)的数目,即第j个作业的本地服务器的数目;
N表示服务器集群(200)中的所有子服务器(202)的数目;
Pj Compete的计算公式如下所示:
Pj Compete=Nodesj Ahead/Nodesj
其中,Nodesj Ahead表示服务器集群(200)中存储有第j个作业的竞争数据块的竞争服务器的数目;
第j个作业的竞争数据块定义为:用于处理第j个作业以及主服务器(201)的待处理作业队列中优先级高于第j个作业的其它作业所需的同一个数据块;
竞争服务器定义为:服务器集群(200)中存储有所述竞争数据块的子服务器(202)。
CN201410373085.8A 2014-07-31 2014-07-31 一种作业调度方法及作业调度系统 Active CN104158860B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410373085.8A CN104158860B (zh) 2014-07-31 2014-07-31 一种作业调度方法及作业调度系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410373085.8A CN104158860B (zh) 2014-07-31 2014-07-31 一种作业调度方法及作业调度系统

Publications (2)

Publication Number Publication Date
CN104158860A CN104158860A (zh) 2014-11-19
CN104158860B true CN104158860B (zh) 2017-09-29

Family

ID=51884265

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410373085.8A Active CN104158860B (zh) 2014-07-31 2014-07-31 一种作业调度方法及作业调度系统

Country Status (1)

Country Link
CN (1) CN104158860B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104639659A (zh) * 2015-03-12 2015-05-20 浪潮集团有限公司 一种基于服务器集群技术的数据抽取转换方法
CN107479963A (zh) * 2016-06-08 2017-12-15 国家计算机网络与信息安全管理中心 一种任务分配方法及系统
CN107343045B (zh) * 2017-07-04 2021-03-19 北京百度网讯科技有限公司 云计算系统及用于控制服务器的云计算方法和装置
CN112114954A (zh) * 2020-09-28 2020-12-22 中国建设银行股份有限公司 软件系统的作业调度配置方法及装置
CN112506619B (zh) * 2020-12-18 2023-08-04 北京百度网讯科技有限公司 作业处理方法、装置、电子设备和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103617087A (zh) * 2013-11-25 2014-03-05 华中科技大学 一种适合迭代计算的MapReduce优化方法
WO2014075555A1 (zh) * 2012-11-14 2014-05-22 电信科学技术研究院 一种时隙资源的调度方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014075555A1 (zh) * 2012-11-14 2014-05-22 电信科学技术研究院 一种时隙资源的调度方法及装置
CN103617087A (zh) * 2013-11-25 2014-03-05 华中科技大学 一种适合迭代计算的MapReduce优化方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MapReduce作业的Data-Aware调度策略研究;付庆午;《中国优秀硕士论文全文数据库 信息科技辑》;20121015(第10期);第23页3-9行,第24页18-20行,图4.2 *

Also Published As

Publication number Publication date
CN104158860A (zh) 2014-11-19

Similar Documents

Publication Publication Date Title
CN104158860B (zh) 一种作业调度方法及作业调度系统
CN102063336B (zh) 一种分布式计算多应用功能异步并发调度方法
CN104901989B (zh) 一种现场服务提供系统及方法
CN108009016A (zh) 一种资源负载均衡控制方法及集群调度器
CN107093046A (zh) 无人配送车任务分配方法、系统和无人配送车
CN110861104B (zh) 一种辅助机器人运送物品的方法、介质、终端和装置
CN104731657B (zh) 一种资源调度方法和系统
CN109885452A (zh) 性能监控方法、装置及终端设备
CN109343942A (zh) 基于边缘计算网络的任务调度方法
CN104021040A (zh) 基于时间约束条件下的云计算关联任务调度方法和装置
CN108009642A (zh) 分布式机器学习方法和系统
CN103514048B (zh) 参与感知系统及其任务分配方法
CN107944000A (zh) 航班运价更新方法、装置、电子设备、存储介质
CN106569887A (zh) 一种云环境下细粒度任务调度方法
CN104616086A (zh) 用于动态设置订单的缓冲时间的方法和设备
CN105808346B (zh) 一种任务调度方法与装置
CN109214712A (zh) 一种订单调度方法及装置
CN111985862A (zh) 定位库存物品的方法和装置
CN104835004A (zh) 一种客房信息管理方法及系统
CN113886034A (zh) 任务调度方法、系统、电子设备及存储介质
CN104410511B (zh) 一种服务器管理方法及系统
CN104735134B (zh) 一种用于提供计算服务的方法和装置
Rolf et al. Distributed constraint programming with agents
CN102508720B (zh) 一种提高前处理模块和后处理模块效率的方法及系统
US9671779B2 (en) Method and system for filtering lot schedules using a previous schedule

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