[发明专利]一种文件作业任务的调度方法及系统无效
| 申请号: | 201110075355.3 | 申请日: | 2011-03-28 |
| 公开(公告)号: | CN102156659A | 公开(公告)日: | 2011-08-17 |
| 发明(设计)人: | 杨树强;王凯;王怀民;吴泉源;贾焰;周斌;韩伟红;滕猛;陈志坤;赵辉;金松昌;罗荣凌;舒琦 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
| 主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F9/50 |
| 代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 逯长明 |
| 地址: | 410073 湖南*** | 国省代码: | 湖南;43 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 文件 作业 任务 调度 方法 系统 | ||
技术领域
本申请涉及分布式计算领域,特别是涉及一种文件作业任务的调度方法及系统。
背景技术
MapReduce是由Google公司发明,是一种新兴的并行编程模式。它将并行化、容错、数据分布、负载均衡等放在一个库里,将系统对数据的所有操作都归结为两个步骤:Map(映射)阶段和Reduce(化简)阶段,使那些没有多少并行计算经验的开发人员也可以开发并行应用,以进行对海量数据的并行处理。
在使用MapReduce模型进行大规模数据的并行计算时,在Map阶段,对于一个MapReduce作业(即用户的一个计算请求)需要拆分成多个Map任务分发到多个节点上执行,采用移动程序(一个Map任务)到节点来完成计算,以减少移动程序造成系统IO开销。
MapReduce作业在执行过程中需要的数据集合称为文件,一个文件被分为多个部分进行存储,划分出来的单位数据称为数据块,且为了防止数据块丢失,每个数据块还同时设置有多个副本数据块,数据块与其多个副本数据块的功能作用相同,所述数据块存储在多个数据节点上,MapReduce任务中的一个Map任务在一个数据块上执行。
由于数据块分散在多个不同数据节点上,而Map任务也需要分发到多个不同数据节点执行,于是存在不同的Map任务分发到与其所需的数据块不在同一节点的情况,造成任务执行过程中IO开销的增加。
发明内容
为解决上述技术问题,本申请实施例提供一种文件作业任务的调度方法及系统,使在对MapReduce作业调度时,一个Map任务执行所在的节点也是其计算所需数据所在节点;减少了任务并发执行时数据移动造成的IO开销的增加。
技术方案如下:
一种文件作业任务的调度方法,包括:
查找执行作业任务所需文件的数据块所在的节点,所述数据块的数量为多个;
计算所述文件对其每个数据块所在节点产生的负载及所述节点的运行负载;
对所述节点的运行负载进行比较,获取负载最轻的节点作为预设节点;
当所述预设节点上由所述文件产生的负载与所述预设节点的运行负载之和小于设定负载阈值时,调度所述作业任务至所述预设节点执行。
上述的方法,优选的,所述文件对其每个数据块所在节点产生的负载的计算过程具体为:
计算执行作业任务所需文件具有的数据块数量及处于所述节点上的属于所述文件的数据块数量;
将处于所述节点上的属于所述文件的数据块数量与所述文件具有的数据块数量的比值作为所述文件对所述节点产生的负载。
上述的方法,优选的,所述节点的运行负载的计算过程具体为:
计算所述节点上执行作业任务的文件对所述节点产生的负载;
将所述节点上执行作业任务的不同文件对所述节点产生的负载的和作为所述节点的运行负载。
上述的方法,优选的,所述负载阈值根据所述节点的运行状况设定,当所述预设节点上由所述文件产生的负载与所述预设节点的运行负载之和未小于负载阈值时,舍弃该预设节点,调度所述作业任务至满足负载阈值的节点执行。
一种文件作业任务的调度系统,包括:
查找单元、计算单元、比较单元和调度单元;
其中:所述查找单元用于查找执行作业任务所需文件的数据块所在的节点,所述数据块的数量为多个;
所述计算单元用于计算所述文件对其每个数据块所在节点产生的负载机所述节点的运行负载;
所述比较单元用于对所述计算单元计算得到的所述节点的运行负载进行比较,并获取负载最轻的节点作为预设节点;
所述调度单元用于当所述预设节点上由所述文件产生的负载与所述预设节点的运行负载之和小于设定负载阈值时,调度所述作业任务至所述预设节点执行。
上述的调度系统,优选的,所述计算单元包括第一计算子单元;
所述第一计算子单元用于计算执行作业任务所需文件具有的数据块数量及处于所述节点上的属于所述文件的数据块的数量;并计算处于所述节点上的属于所述文件的数据块数量与所述文件具有的数据块的比值,将所述比值作为所述文件对所述节点产生的负载。
上述的调度系统,优选的,所述计算单元还包括第二计算子单元;
所述第二计算子单元用于对所述第一计算子单元计算的所述节点上执行作业任务的不同文件对所述节点产生的负载求和,并将所述负载的和作为所述节点的运行负载。
上述的调度系统,优选的,所述调度单元包括阈值设定子单元;
所述阈值设定子单元用于对所述节点的负载阈值进行设定。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110075355.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:新型电池壳体结构
- 下一篇:有机无机LED面光源模块





