[发明专利]一种基于容量的多任务调度方法及系统在审
申请号: | 201210028768.0 | 申请日: | 2012-02-09 |
公开(公告)号: | CN103246550A | 公开(公告)日: | 2013-08-14 |
发明(设计)人: | 徐钊;赵彦荣;郭玮;李均;赵伟;张书彬;洪坤乾 | 申请(专利权)人: | 深圳市腾讯计算机系统有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46 |
代理公司: | 深圳中一专利商标事务所 44237 | 代理人: | 张全文 |
地址: | 518044 广东省深圳市南*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 容量 任务 调度 方法 系统 | ||
技术领域
本发明属于数据处理技术领域,尤其涉及一种基于容量的多任务调度方法及系统。
背景技术
映射化简(MapReduce)是一种分布式的用于处理大规模数据集的并行编程模式或者通用框架。通过定义相应的映射(Map)和化简(Reduce)函数来实现分布式数据处理的功能。
在现有基于MapReduce框架的任务调度系统中,包括调度节点(JobTracker)和若干个任务执行节点(TaskTracker),其网络架构如图1所示,其中,客户端用于将用户布置的并行处理作业提交至调度节点,调度节点将客户端提交的作业分解为多个具有相同处理功能(但输入数据可能不同)的Map任务和多个具有相同处理功能(但处理的数据可能不同)的Reduce任务,并将分解的任务缓存在内存中。当任务执行节点没有达到其任务执行能力时,即当前执行的任务数低于可执行任务数时,任务执行节点向调度节点请求任务,调度节点从分解出的任务中调度一个任务给任务执行节点。
在现有技术中,当任务执行节点的硬件配置较低或者其上运行的任务占用的资源较多,如正在运行的任务占用了大量的系统资源(CPU负载过重和/或内存不足等)时,如果任务执行节点尚未达到其预先配置的最大任务配额,其仍然会向调度节点请求执行新任务,在这种情况下,不仅可能出现新任务由于内存不足不能正常执行的情况,而且还会影响到正在执行的任务,甚至会导致调度节点发生故障。另外,对于任务执行节点的硬件配置较高或者其上运行的任务占用资源较少,如果任务执行节点已经达到其预先配置的最大任务配额,其将不再向调度节点请求执行新任务,从而造成任务执行节点资源的浪费。
总之,在现有基于MapReduce框架的任务调度系统中,任务执行节点仅根据预先部署的配置信息请求任务,容易造成任务执行节点过载、负载及内存不足等问题,影响任务调度和执行的效率。
发明内容
本发明提供一种多任务调度方法,以解决现有基于MapReduce框架的任务调度系统容易造成任务执行节点过载、负载及内存不足的问题。
本发明是这样实现的,一种多任务调度方法,所述方法包括:
任务执行节点向调度节点发送获取任务的请求,该请求中携带有该任务执行节点当前的负载值以及可用内存空间;
调度节点判断所述负载值是否小于一阈值,若是,根据所述任务执行节点的当前可用内存空间,为该任务执行节点进行任务调度。
一种任务调度设备,所述设备包括:
请求信息接收单元,用于接收任务执行节点发送的获取任务的请求,所述请求中携带有该任务执行节点当前的负载值以及可用内存空间;
第一判断单元,用于判断所述负载值是否小于一阈值;
第二判断单元,用于在所述第一判断单元判断结果为是时,判断是否存在内存需求量小于或者等于所述任务执行节点当前可用内存空间的待分配任务;
分配单元,用于在所述第二判断单元判断结果为是时,将将内存需求量小于或等于所述任务执行节点当前可用内存空间的任务分配给该任务执行节点。
一种任务执行设备,所述设备包括:
请求信息发送单元,用于向调度节点发送获取任务的请求,该请求中携带有该任务执行节点当前的负载值以及可用内存空间;
任务接收单元,用于接收调度节点分配的任务。
一种多任务调度系统,其特征在于,所述系统包括所述任务调度设备以及至少一个所述任务执行设备。
从上述技术方案可以看出,本发明根据任务执行节点上报的负载值以及可用内存空间进行任务调度,将任务分配给负载合适及内存充足的任务执行节点,从而可有效避免任务执行节点过载、负载及内存不足等问题,提高任务执行节点资源的利用率以及任务调度和执行的效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是现有基于MapReduce框架的任务调度系统的示意图;
图2是本发明实施例一提供的多任务调度系统的组成结构图。
图3是本发明实施例二提供的多任务调度方法的实现流程图;
图4是本发明实施例三提供的任务调度设备的组成结构图;
图5是本发明实施例四提供的任务执行设备的组成结构图。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市腾讯计算机系统有限公司,未经深圳市腾讯计算机系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210028768.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电力工程中无线局域网硬件双冗余结构
- 下一篇:一种卫星数字发行系统和方法