CN103297499B - 一种基于云平台的调度方法及系统 - Google Patents
一种基于云平台的调度方法及系统 Download PDFInfo
- Publication number
- CN103297499B CN103297499B CN201310140906.9A CN201310140906A CN103297499B CN 103297499 B CN103297499 B CN 103297499B CN 201310140906 A CN201310140906 A CN 201310140906A CN 103297499 B CN103297499 B CN 103297499B
- Authority
- CN
- China
- Prior art keywords
- task
- performer
- high speed
- resource
- scheduler
- 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 22
- 230000007246 mechanism Effects 0.000 claims abstract description 34
- 238000012546 transfer Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 239000002699 waste material Substances 0.000 description 3
- 238000007418 data mining Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Landscapes
- Multi Processors (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及领云平台上的任务调度技术域,尤其涉及一种基于云平台的调度方法及系统,该方法包括:发送任务请求至高速调度器;高速调度器根据任务请求的大小计算出资源请求;资源获取/释放器根据资源请求的大小来获取或释放资源;运行器在启动时向高速调度器注册;高速调度器根据调度机制将所述任务请求分配给所述运行器,运行器执行并完成任务,并通过高速调度器将完成的任务提交给管理器,管理器再将其提交给用户应用程序。该方法适用于在云平台上,尤其是云计算平台上高效的大规模任务的调度,资源获取/释放器能够动态地分配和释放资源,高速调度器采用轻型高效的调度机制,可以达到高任务吞吐量和支持多达数百万的运行器。
Description
技术领域
本发明涉及领云平台上的任务调度技术域,尤其涉及一种基于云平台的调度方法及系统。
背景技术
云平台的调度相对来说还处于初始发展时期,在这个领域里比较成熟的系统并不多,Amazon的弹性云计算服务(EC2:Elastic Compute Cloud)在功能上也是根据要生成的应用实例的数量动态地分配或释放虚拟机,但EC2是处于基础结构级的服务,应用开发者还需要自行对虚拟机进行管理。调度器本身也没有针对行业应用,或数据的优化。
Google的MapReduce系统以及Hadoop开源系统也提供了任务调度功能,但它们只是针对MapReduce应用的运行,而且运行环境需要和特定的专用文件系统进行绑定,应用所使用的数据也需要预先进行分区存放,从这个角度来说并不具有动态获取和释放服务器的功能,资源的利用效率也跟数据的存放很有关系。
另外传统的集群调度程序,如Condor,PBS等也能对上千台服务器进行调度,但这些系统经常囊括了很多附属功能,从而造成系统庞大笨重,每派发一个任务需要较长时间(几秒甚至更多),任务吞吐量较低(不超过30TPS),这对于需要快速实时的用户响应情况不太合适,在处理大规模的任务请求时开销也比较大。
发明内容
本发明的目的在于提出一种高效且使能耗降低的基于云平台的调度方法及系统。
为达此目的,本发明采用以下技术方案:
一种基于云平台的调度方法,包括:
用户应用程序发送任务请求至管理器,管理器把任务请求中的任务转换成预设的格式,并将任务请求提交给高速调度器;
高速调度器根据任务请求的大小计算出资源请求,并把资源请求发送给资源获取/释放器;
资源获取/释放器根据资源请求的大小来获取或释放资源,若资源请求超过当前高速调度器的负载,则资源获取/释放器获取资源,并将获取的资源作为运行器分配给高速调度器;若资源请求小于当前高速调度器的负载,则资源获取/释放器释放运行器为空闲的云资源;
运行器在启动时由外网服务器获得外网地址和端口,然后向高速调度器注册;
高速调度器根据调度机制将所述任务请求分配给所述运行器,运行器执行并完成任务,并通过高速调度器将完成的任务提交给管理器,管理器再将其提交给用户应用程序。
采用分级式的高速调度器,把资源获取和任务派发分离开,传统的资源管理器,由于把资源管理、获取和任务派发集成在一起,这样影响了任务派发的效率,也使得改进已有资源管理器上比较困难,本方法把资源的获取这一模块分离开,交给动态资源获取/释放器来负责,一旦资源获取之后,将获取的资源作为任务运行器,这样能保证任务请求在极短的时间内被分派运行。
其中,调度机制为流水线调度机制:高速调度器采用轻型高效的调度机制,任务的调度采用的是基于“推”和“拉”的混合模式,高速调度器在有任务需要执行时,向所有空闲运行器发送通知,接到通知的运行器到高速调度器接取任务,执行并返回结果给高速调度器。
高速调度器和运行器本身都采用自底向上的实现方法,从最简单最快捷的功能开始实现,并把高速调度器和运行器之间的交互降低到最低,在正常情况下,分派一个任务只需要交换3条信息:1、通知运行器有任务要执行;2、运行器取走任务;3、运行器返回结果。在一定情况下,还可以将多个任务打包在一起,送给运行器,或者是在运行器送结果时顺便再发送一个任务,也即Piggyback优化策略,这样每个任务平均所需消息还可以降低。
其中,调度机制包含基于任务相关性的调度算法,所述任务请求与之前的任务请求具有相关性,该任务请求被分配到执行所述之前的任务请求的运行器。
云平台上运行的任务通常具有相关性,也就是说有些任务的输出,会被其他任务用作输入,这对于数据密集的行业任务尤其明显,比如在医疗系统中的数据挖掘业务,数据量非常大,后续任务所需要的数据往往是前面已完成任务的输出,基于任务相关性的调度算法能够根据任务请求的相关性,把该任务请求调度到存有它所需要的数据的运行器上运行,这样可以尽可能地减少数据移动,缩短任务的执行时间,对用户来说不仅可以享受到快速的服务,还能因为数据流量和运行时间的减少而减少使用费。
其中,高速调度器设置有一个全局缓存,每个所述运行器设置有一个局部缓存,所述全局缓存和局部缓存组成多级缓存。
本发明采用多级数据缓存技术,在每个运行器维护一个局部缓存,记录本机运算产生的结果及路径,同时高速调度器本身维护一个全局缓存,在调度任务时根据任务所需的数据,匹配运行器,每个运行器再定期刷新全局缓存,采用全局缓存是为了维持高速调度器的高速任务吞吐量,但相对来说对内存的容量要求也比较高,可以采用不同的缓存记录替换算法,如FIFO(先进先出)、LUR(最近少用)、LFU(最不常用)等。
调度机制包含以下几种调度算法:
a、选择第一个可用的运行器:这种算法并不考虑任务之间的数据相关性,当新任务到达时,直接选取一个可用的运行器,并把任务分配到该运行器,在这种情况下,我们需要把任务所需的数据都传输到运行器上;
b、选择缓存命中最大的运行器:把任务分配到存有任务所需数据最多的运行器上,如果该运行器忙的话,就一直等待它运算完为止,这种算法能把数据传输减小到最小,但可能会减低资源利用效率,因为运行器上所存的数据分布不一定是均匀的;
c、最大运算效率:这种算法尽量最大化资源利用效率,哪怕是要多花些时间在传输上面,基本上它也是考虑下一个可用运行器,但会优先选择存有较多任务所需数据的运行器,这样不需要等待繁忙的运行器;
d、混合模式:结合b和c两种调度算法,设定一个资源利用效率的阈值,如果在阈值之上,就采用调度算法b,否则采用调度算法c。
其中,高速调度器之前还设置有任务均衡器,用户应用程序发送任务请求至任务均衡器,任务均衡器根据多个高速调度器的状态,均衡的分配任务请求到高速调度器,高速调度器再把其所分配到的任务请求分配到其所对应的运行器。
一种基于云平台的调度系统,包括高速调度器、资源获取/释放器、运行器,该系统的工作流程为:
用户应用程序发送任务请求至管理器,管理器把任务请求中的任务转换成预设的格式,并将任务请求提交给高速调度器;
高速调度器根据任务请求的大小计算出资源请求,并把资源请求发送给资源获取/释放器;
资源获取/释放器根据资源请求的大小来获取或释放资源,若资源请求超过当前高速调度器的负载,则资源获取/释放器获取资源,并将获取的资源作为运行器分配给高速调度器;若资源请求小于当前高速调度器的负载,则资源获取/释放器释放运行器为空闲的云资源;
运行器在启动时由外网服务器获得外网地址和端口,然后向高速调度器注册;
高速调度器根据调度机制将所述任务请求分配给所述运行器,运行器执行并完成任务,并通过高速调度器将完成的任务提交给管理器,管理器再将其提交给用户应用程序。
其中,高速调度器的调度机制为流水线调度机制:高速调度器采用轻型高效的调度机制,任务的调度采用的是基于“推”和“拉”的混合模式,高速调度器在有任务需要执行时,向所有空闲运行器发送通知,接到通知的运行器到高速调度器接取任务,执行并返回结果给高速调度器。
其中,高速调度器的调度机制包含基于任务相关性的调度算法,所述任务请求与之前的任务请求具有相关性,该任务请求被分配到执行所述之前的任务请求的运行器。
调度机制还包含以下几种调度算法:
a、选择第一个可用的运行器:这种算法并不考虑任务之间的数据相关性,当新任务到达时,直接选取一个可用的运行器,并把任务分配到该运行器,在这种情况下,我们需要把任务所需的数据都传输到运行器上;
b、选择缓存命中最大的运行器:把任务分配到存有任务所需数据最多的运行器上,如果该运行器忙的话,就一直等待它运算完为止,这种算法能把数据传输减小到最小,但可能会减低资源利用效率,因为运行器上所存的数据分布不一定是均匀的;
c、最大运算效率:这种算法尽量最大化资源利用效率,哪怕是要多花些时间在传输上面,基本上它也是考虑下一个可用运行器,但会优先选择存有较多任务所需数据的运行器,这样不需要等待繁忙的运行器;
d、混合模式:结合b和c两种调度算法,设定一个资源利用效率的阈值,如果在阈值之上,就采用调度算法b,否则采用调度算法c。
其中,高速调度器设置有一个全局缓存,每个所述运行器设置有一个局部缓存,所述全局缓存和局部缓存组成多级缓存。
其中,系统还包括任务均衡器,任务均衡器设置在高速调度器之前,用户应用程序发送任务请求至任务均衡器,任务均衡器根据多个高速调度器的状态,均衡的分配任务请求到高速调度器,高速调度器再把其所分配到的任务请求分配到其所对应的运行器。
本发明的有益效果为:一种基于云平台的调度方法,包括:用户应用程序发送任务请求至管理器,管理器把任务请求中的任务转换成预设的格式,并将任务请求提交给高速调度器;高速调度器根据任务请求的大小计算出资源请求,并把资源请求发送给资源获取/释放器;资源获取/释放器根据资源请求的大小来获取或释放资源,若资源请求超过当前高速调度器的负载,则资源获取/释放器获取资源,并将获取的资源作为运行器分配给高速调度器;若资源请求小于当前高速调度器的负载,则资源获取/释放器释放运行器为空闲的云资源;运行器在启动时由外网服务器获得外网地址和端口,然后向高速调度器注册;高速调度器根据调度机制将所述任务请求分配给所述运行器,运行器执行并完成任务,并通过高速调度器将完成的任务提交给管理器,管理器再将其提交给用户应用程序。该方法适用于在云平台上,尤其是云计算平台上高效的大规模任务的调度,资源获取/释放器能够动态地分配和释放虚拟机资源供调度器使用,高速调度器采用轻型高效的调度机制,可以达到高任务吞吐量和支持多达数百万的运行器。
附图说明
图1是本发明方法流程图
图2是本发明方法示意图
图3是本发明系统结构图
具体实施方式
下面将结合图1-图3并通过具体实施方式来进一步说明本发明的技术方案。
一种基于云平台的调度方法,包括:
用户应用程序发送任务请求至管理器,管理器把任务请求中的任务转换成预设的格式,并将任务请求提交给高速调度器;
高速调度器根据任务请求的大小计算出资源请求,并把资源请求发送给资源获取/释放器;
资源获取/释放器根据资源请求的大小来获取或释放资源,若资源请求超过当前高速调度器的负载,则资源获取/释放器获取资源,并将获取的资源作为运行器分配给高速调度器;若资源请求小于当前高速调度器的负载,则资源获取/释放器释放运行器为空闲的云资源;
运行器在启动时由外网服务器获得外网地址和端口,然后向高速调度器注册;
高速调度器根据调度机制将所述任务请求分配给所述运行器,运行器执行并完成任务,并通过高速调度器将完成的任务提交给管理器,管理器再将其提交给用户应用程序。
采用分级式的高速调度器,把资源获取和任务派发分离开,传统的资源管理器,由于把资源管理、获取和任务派发集成在一起,这样影响了任务派发的效率,也使得改进已有资源管理器上比较困难,本方法把资源的获取这一模块分离开,交给动态资源获取/释放器来负责,一旦资源获取之后,将获取的资源作为任务运行器,这样能保证任务请求在极短的时间内被分派运行。
高速调度器能支持大规模数量的运行器,和数以千万计的任务的执行:由于高速调度器采用轻型的注册和任务调度机制,一台高速调度器能支持数万台的运行器的注册,并将任务分配至这些运行器同时执行。调度器本身的任务队列可以支持数以千万计的任务的提交和执行。
在本实施例中,调度机制为流水线调度机制:高速调度器采用轻型高效的调度机制,任务的调度采用的是基于“推”和“拉”的混合模式,高速调度器在有任务需要执行时,向所有空闲运行器发送通知,接到通知的运行器到高速调度器接取任务,执行并返回结果给高速调度器。
高速调度器和运行器本身都采用自底向上的实现方法,从最简单最快捷的功能开始实现,并把高速调度器和运行器之间的交互降低到最低,在正常情况下,分派一个任务只需要交换3条信息:1、通知运行器有任务要执行;2、运行器取走任务;3、运行器返回结果。在一定情况下,还可以将多个任务打包在一起,送给运行器,或者是在运行器送结果时顺便再发送一个任务,也即Piggyback优化策略,这样每个任务平均所需消息还可以降低。
在本实施例中,调度机制包含基于任务相关性的调度算法,所述任务请求与之前的任务请求具有相关性,该任务请求被分配到执行所述之前的任务请求的运行器。
云平台上运行的任务通常具有相关性,也就是说有些任务的输出,会被其他任务用作输入,这对于数据密集的行业任务尤其明显,比如在医疗系统中的数据挖掘业务,数据量非常大,后续任务所需要的数据往往是前面已完成任务的输出,基于任务相关性的调度算法能够根据任务请求的相关性,把该任务请求调度到存有它所需要的数据的运行器上运行,这样可以尽可能地减少数据移动,缩短任务的执行时间,对用户来说不仅可以享受到快速的服务,还能因为数据流量和运行时间的减少而减少使用费。
在本实施例中,高速调度器设置有一个全局缓存,每个所述运行器设置有一个局部缓存,所述全局缓存和局部缓存组成多级缓存。
本发明采用多级数据缓存技术,在每个运行器维护一个局部缓存,记录本机运算产生的结果及路径,同时高速调度器本身维护一个全局缓存,在调度任务时根据任务所需的数据,匹配运行器,每个运行器再定期刷新全局缓存,采用全局缓存是为了维持高速调度器的高速任务吞吐量,但相对来说对内存的容量要求也比较高,可以采用不同的缓存记录替换算法,如FIFO(先进先出)、LUR(最近少用)、LFU(最不常用)等。
调度机制还包含以下几种调度算法:
a、选择第一个可用的运行器:这种算法并不考虑任务之间的数据相关性,当新任务到达时,直接选取一个可用的运行器,并把任务分配到该运行器,在这种情况下,我们需要把任务所需的数据都传输到运行器上;
b、选择缓存命中最大的运行器:把任务分配到存有任务所需数据最多的运行器上,如果该运行器忙的话,就一直等待它运算完为止,这种算法能把数据传输减小到最小,但可能会减低资源利用效率,因为运行器上所存的数据分布不一定是均匀的;
c、最大运算效率:这种算法尽量最大化资源利用效率,哪怕是要多花些时间在传输上面,基本上它也是考虑下一个可用运行器,但会优先选择存有较多任务所需数据的运行器,这样不需要等待繁忙的运行器;
d、混合模式:结合b和c两种调度算法,设定一个资源利用效率的阈值,如果在阈值之上,就采用调度算法b,否则采用调度算法c。
在本实施例中,高速调度器之前还设置有任务均衡器,用户应用程序发送任务请求至任务均衡器,任务均衡器根据多个高速调度器的状态,均衡的分配任务请求到高速调度器,高速调度器再把其所分配到的任务请求分配到其所对应的运行器,这样整体上系统可以具备极高的扩展性。
一种基于云平台的调度系统,包括高速调度器、资源获取/释放器、运行器,该系统的工作流程为:
用户应用程序发送任务请求至管理器,管理器把任务请求中的任务转换成预设的格式,并将任务请求提交给高速调度器;
高速调度器根据任务请求的大小计算出资源请求,并把资源请求发送给资源获取/释放器;
资源获取/释放器根据资源请求的大小来获取或释放资源,若资源请求超过当前高速调度器的负载,则资源获取/释放器获取资源,并将获取的资源作为运行器分配给高速调度器;若资源请求小于当前高速调度器的负载,则资源获取/释放器释放运行器为空闲的云资源;
运行器在启动时由外网服务器获得外网地址和端口,然后向高速调度器注册;
高速调度器根据调度机制将所述任务请求分配给所述运行器,运行器执行并完成任务,并通过高速调度器将完成的任务提交给管理器,管理器再将其提交给用户应用程序。
在本实施例中,高速调度器的调度机制为流水线调度机制:高速调度器采用轻型高效的调度机制,任务的调度采用的是基于“推”和“拉”的混合模式,高速调度器在有任务需要执行时,向所有空闲运行器发送通知,接到通知的运行器到高速调度器接取任务,执行并返回结果给高速调度器。
在本实施例中,高速调度器的调度机制包含基于任务相关性的调度算法,所述任务请求与之前的任务请求具有相关性,该任务请求被分配到执行所述之前的任务请求的运行器。
调度机制还包含以下几种调度算法:
a、选择第一个可用的运行器:这种算法并不考虑任务之间的数据相关性,当新任务到达时,直接选取一个可用的运行器,并把任务分配到该运行器,在这种情况下,我们需要把任务所需的数据都传输到运行器上;
b、选择缓存命中最大的运行器:把任务分配到存有任务所需数据最多的运行器上,如果该运行器忙的话,就一直等待它运算完为止,这种算法能把数据传输减小到最小,但可能会减低资源利用效率,因为运行器上所存的数据分布不一定是均匀的;
c、最大运算效率:这种算法尽量最大化资源利用效率,哪怕是要多花些时间在传输上面,基本上它也是考虑下一个可用运行器,但会优先选择存有较多任务所需数据的运行器,这样不需要等待繁忙的运行器;
d、混合模式:结合b和c两种调度算法,设定一个资源利用效率的阈值,如果在阈值之上,就采用调度算法b,否则采用调度算法c。
在本实施例中,高速调度器设置有一个全局缓存,每个所述运行器设置有一个局部缓存,所述全局缓存和局部缓存组成多级缓存。
在本实施例中,系统还包括任务均衡器,任务均衡器设置在高速调度器之前,用户应用程序发送任务请求至任务均衡器,任务均衡器根据多个高速调度器的状态,均衡的分配任务请求到高速调度器,高速调度器再把其所分配到的任务请求分配到其所对应的运行器。
调度对于面向行业的云平台是至关重要的。主要原因在于云平台的终端用户,如电信行业的用户,可以多达几千万甚至上亿,而每个用户每天可以访问多项业务(如音乐、游戏等),这些业务访问反映在云平台内部就是上千万级的任务请求。因此,本发明首先需要研究的就是要具有高度可扩展性的调度系统,能够处理如此大数量的任务请求,并且还要能应付突发的大规模需求,比如在春节前后,点歌业务可能会有比平时多出好几倍的业务需求。调度系统需要实现弹性调度,也就是能够根据任务请求量动态地获取或释放资源。如果任务数量巨大,当前已获取的服务器资源不足以处理这些请求,调度器就需要向资源管理器申请更多的资源,来满足这些额外的任务请求。同样,如果业务量降低(比如到了晚上,在线用户数减少),有些已获取的服务器处于空闲状态,调度器就需要释放一些相应的资源,避免资源浪费。
针对电信行业的服务还具有高度的实时性,用户请求需要在短时间内得到响应。因此云平台中的调度系统还需要把任务请求高速分配到后台的成千上万台服务器上,实现很大的任务吞吐量。
本发明的另一个重点是实现高效节能的调度策略。云平台中的资源利用效率非常重要,这一方面是因为能源开支,资源的浪费就是能源的浪费,另一方面是因为云平台的收费通常是基于所使用的资源来收费的,如果资源使用不均衡,存在浪费,这也会同样增加用户的支出。因此,除了实现上述的弹性调度之外,调度器还需要最大化所获取的资源利用效率,能够尽量均衡地把任务分配到每个资源上,避免资源存在低利用率的情况。
以上所述仅为本发明的具体实施方式,这些描述只是为了解释本发明的原理,而不能以任何方式解释为对本发明保护范围的限制。基于此处的解释,本领域的技术人员不需要付出创造性的劳动即可联想到本发明的其它具体实施方式,这些方式都将落入本发明的保护范围之内。
Claims (4)
1.一种基于云平台的调度方法,其特征在于,包括:
用户应用程序发送任务请求至管理器,管理器把任务请求中的任务转换成预设的格式,并将任务请求提交给高速调度器;
高速调度器根据任务请求的大小计算出资源请求,并把资源请求发送给资源获取/释放器;
资源获取/释放器根据资源请求的大小来获取或释放资源,若资源请求超过当前高速调度器的负载,则资源获取/释放器获取资源,并将获取的资源作为运行器分配给高速调度器;若资源请求小于当前高速调度器的负载,则资源获取/释放器释放运行器为空闲的云资源;
运行器在启动时由外网服务器获得外网地址和端口,然后向高速调度器注册;
高速调度器根据调度机制将所述任务请求分配给所述运行器,运行器执行并完成任务,并通过高速调度器将完成的任务提交给管理器,管理器再将其提交给用户应用程序,所述高速调度器设置有一个全局缓存,每个所述运行器设置有一个局部缓存,所述全局缓存和局部缓存组成多级缓存;其中,所述调度机制包含基于任务相关性的调度算法,所述任务请求与之前的任务请求具有相关性,该任务请求被分配到执行所述之前的任务请求的运行器;或者
所述调度机制包含以下几种调度算法:
a、选择第一个可用的运行器:这种算法并不考虑任务之间的数据相关性,当新任务到达时,直接选取一个可用的运行器,并把任务分配到该运行器,在这种情况下,我们需要把任务所需的数据都传输到运行器上;
b、选择缓存命中最大的运行器:把任务分配到存有任务所需数据最多的运行器上,如果该运行器忙的话,就一直等待它运算完为止,这种算法能把数据传输减小到最小,但可能会减低资源利用效率,因为运行器上所存的数据分布不一定是均匀的;
c、最大运算效率:这种算法尽量最大化资源利用效率,哪怕是要多花些时间在传输上面,基本上它也是考虑下一个可用运行器,但会优先选择存有较多任务所需数据的运行器,这样不需要等待繁忙的运行器;
d、混合模式:结合b和c两种调度算法,设定一个资源利用效率的阈值,如果在阈值之上,就采用调度算法b,否则采用调度算法c。
2.根据权利要求1所述的一种基于云平台的调度方法,其特征在于,所述高速调度器之前还设置有任务均衡器,用户应用程序发送任务请求至任务均衡器,任务均衡器根据多个高速调度器的状态,均衡的分配任务请求到高速调度器,高速调度器再把其所分配到的任务请求分配到其所对应的运行器。
3.一种基于云平台的调度系统,其特征在于,包括高速调度器、资源获取/释放器、运行器,该系统的工作流程为:
用户应用程序发送任务请求至管理器,管理器把任务请求中的任务转换成预设的格式,并将任务请求提交给高速调度器;
高速调度器根据任务请求的大小计算出资源请求,并把资源请求发送给资源获取/释放器;
资源获取/释放器根据资源请求的大小来获取或释放资源,若资源请求超过当前高速调度器的负载,则资源获取/释放器获取资源,并将获取的资源作为运行器分配给高速调度器;若资源请求小于当前高速调度器的负载,则资源获取/释放器释放运行器为空闲的云资源,其中,所述高速调度器的调度机制包含基于任务相关性的调度算法,所述任务请求与之前的任务请求具有相关性,该任务请求被分配到执行所述之前的任务请求的运行器;或者
所述高速调度器的调度机制还包含以下几种调度算法:
a、选择第一个可用的运行器:这种算法并不考虑任务之间的数据相关性,当新任务到达时,直接选取一个可用的运行器,并把任务分配到该运行器,在这种情况下,我们需要把任务所需的数据都传输到运行器上;
b、选择缓存命中最大的运行器:把任务分配到存有任务所需数据最多的运行器上,如果该运行器忙的话,就一直等待它运算完为止,这种算法能把数据传输减小到最小,但可能会减低资源利用效率,因为运行器上所存的数据分布不一定是均匀的;
c、最大运算效率:这种算法尽量最大化资源利用效率,哪怕是要多花些时间在传输上面,基本上它也是考虑下一个可用运行器,但会优先选择存有较多任务所需数据的运行器,这样不需要等待繁忙的运行器;
d、混合模式:结合b和c两种调度算法,设定一个资源利用效率的阈值,如果在阈值之上,就采用调度算法b,否则采用调度算法c;
所述高速调度器设置有一个全局缓存,每个所述运行器设置有一个局部缓存,所述全局缓存和局部缓存组成多级缓存;
运行器在启动时由外网服务器获得外网地址和端口,然后向高速调度器注册;
高速调度器根据调度机制将所述任务请求分配给所述运行器,运行器执行并完成任务,并通过高速调度器将完成的任务提交给管理器,管理器再将其提交给用户应用程序。
4.根据权利要求3所述的一种基于云平台的调度系统,其特征在于,所述系统还包括任务均衡器,任务均衡器设置在高速调度器之前,用户应用程序发送任务请求至任务均衡器,任务均衡器根据多个高速调度器的状态,均衡的分配任务请求到高速调度器,高速调度器再把其所分配到的任务请求分配到其所对应的运行器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310140906.9A CN103297499B (zh) | 2013-04-19 | 2013-04-19 | 一种基于云平台的调度方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310140906.9A CN103297499B (zh) | 2013-04-19 | 2013-04-19 | 一种基于云平台的调度方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103297499A CN103297499A (zh) | 2013-09-11 |
CN103297499B true CN103297499B (zh) | 2017-02-08 |
Family
ID=49097802
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310140906.9A Expired - Fee Related CN103297499B (zh) | 2013-04-19 | 2013-04-19 | 一种基于云平台的调度方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103297499B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103458052B (zh) * | 2013-09-16 | 2017-05-24 | 北京搜狐新媒体信息技术有限公司 | 一种基于IaaS云平台的资源调度方法和装置 |
CN103577256B (zh) * | 2013-11-21 | 2017-03-15 | 五八同城信息技术有限公司 | 分布式定时任务调度系统 |
CN103685569A (zh) * | 2013-12-31 | 2014-03-26 | 曙光云计算技术有限公司 | 一种自动调整资源池的方法及系统 |
CN103823719A (zh) * | 2014-02-26 | 2014-05-28 | 杭州群核信息技术有限公司 | 针对可执行程序的分布式云计算系统及针对可执行程序的分布式云计算方法 |
CN103941662A (zh) * | 2014-03-19 | 2014-07-23 | 华存数据信息技术有限公司 | 一种基于云计算的任务调度系统和调度方法 |
CN103914339B (zh) * | 2014-04-09 | 2017-08-18 | 百度在线网络技术(北京)有限公司 | 服务器管理系统及服务器管理方法 |
CN104933176B (zh) * | 2015-06-30 | 2018-10-12 | 四川医科大学 | 基于MapReduce技术的大数据地址分层调度方法 |
CN108123987A (zh) * | 2016-11-30 | 2018-06-05 | 华为技术有限公司 | 从云计算系统中确定主调度器的方法及装置 |
CN107357649B (zh) * | 2017-05-27 | 2020-07-03 | 北京奇艺世纪科技有限公司 | 系统资源部署策略的确定方法、装置及电子设备 |
CN108965372A (zh) * | 2017-12-20 | 2018-12-07 | 北京视联动力国际信息技术有限公司 | 一种服务调度方法和装置 |
CN110928673A (zh) * | 2018-09-20 | 2020-03-27 | 北京国双科技有限公司 | 任务的分配方法及装置 |
CN109213005A (zh) * | 2018-11-21 | 2019-01-15 | 成都四方伟业软件股份有限公司 | 一种仿真控制方法及装置 |
CN109815019B (zh) * | 2019-02-03 | 2021-06-15 | 普信恒业科技发展(北京)有限公司 | 任务调度方法、装置、电子设备及可读存储介质 |
CN110543352B (zh) * | 2019-08-16 | 2022-06-07 | 浙江大华技术股份有限公司 | 调度系统的任务分配方法及其相关的装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101951411A (zh) * | 2010-10-13 | 2011-01-19 | 戴元顺 | 云调度系统及方法以及多级云调度系统 |
CN102073546A (zh) * | 2010-12-13 | 2011-05-25 | 北京航空航天大学 | 一种云计算环境中分布式计算模式下的任务动态调度方法 |
CN102339444A (zh) * | 2010-07-27 | 2012-02-01 | 戴元顺 | 云超市系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011110026A1 (zh) * | 2010-10-29 | 2011-09-15 | 华为技术有限公司 | 一种实现数据中心资源负载均衡的方法及装置 |
-
2013
- 2013-04-19 CN CN201310140906.9A patent/CN103297499B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102339444A (zh) * | 2010-07-27 | 2012-02-01 | 戴元顺 | 云超市系统 |
CN101951411A (zh) * | 2010-10-13 | 2011-01-19 | 戴元顺 | 云调度系统及方法以及多级云调度系统 |
CN102073546A (zh) * | 2010-12-13 | 2011-05-25 | 北京航空航天大学 | 一种云计算环境中分布式计算模式下的任务动态调度方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103297499A (zh) | 2013-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103297499B (zh) | 一种基于云平台的调度方法及系统 | |
CN102156665B (zh) | 一种虚拟化系统竞争资源差异化服务方法 | |
Ishii et al. | Elastic stream computing with clouds | |
CN103731372B (zh) | 一种混合云环境下服务提供者的资源供应方法 | |
CN107066319A (zh) | 一种面向异构资源的多维调度系统 | |
WO2016078178A1 (zh) | 一种虚拟cpu调度方法 | |
CN109901922A (zh) | 一种面向多层服务的容器云资源调度优化方法 | |
CN103927225A (zh) | 一种多核心架构的互联网信息处理优化方法 | |
CN110058932A (zh) | 一种用于数据流驱动计算的存储方法和存储系统 | |
CN104239141A (zh) | 数据中心中基于工作流关键路径的任务优化调度方法 | |
CN102469126B (zh) | 一种应用调度系统、方法和相关装置 | |
CN104679594B (zh) | 一种中间件分布式计算方法 | |
Shin et al. | Deadline-guaranteed scheduling algorithm with improved resource utilization for cloud computing | |
CN103401939A (zh) | 一种采用混合调度策略的负载均衡方法 | |
CN112306642B (zh) | 一种基于稳定匹配博弈理论的工作流调度方法 | |
CN103595780A (zh) | 基于消重的云计算资源调度方法 | |
CN104050043A (zh) | 基于共享缓存感知的虚拟机调度方法和装置 | |
Kao et al. | Data-locality-aware mapreduce real-time scheduling framework | |
Li et al. | Data locality optimization based on data migration and hotspots prediction in geo-distributed cloud environment | |
CN109815009A (zh) | 一种csp下的资源调度与优化方法 | |
He et al. | A two-stage scheduling method for deadline-constrained task in cloud computing | |
CN107197039A (zh) | 一种基于cdn的paas平台服务包分发方法及系统 | |
Peng et al. | Research on cloud computing resources provisioning based on reinforcement learning | |
Shahapure et al. | Distance and traffic based virtual machine migration for scalability in cloud computing | |
Butt et al. | Optimization of response and processing time for smart societies using particle swarm optimization and levy walk |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210111 Address after: No.2006 Xiyuan Avenue, Chengdu, Sichuan 611731 Patentee after: University of Electronic Science and technology of Sichuan foundation for education development Address before: Room 402, area a, Liye building, science and Technology Park, China sensor network university, Taike Park, Wuxi New District, Wuxi City, Jiangsu Province, 214135 Patentee before: WUXI UESTC TECHNOLOGY DEVELOPMENT Co.,Ltd. |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170208 |