[发明专利]一种任务调度方法和装置有效
申请号: | 201310750655.6 | 申请日: | 2013-12-31 |
公开(公告)号: | CN103729246B | 公开(公告)日: | 2017-05-03 |
发明(设计)人: | 刘璧怡 | 申请(专利权)人: | 浪潮(北京)电子信息产业有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50 |
代理公司: | 北京安信方达知识产权代理有限公司11262 | 代理人: | 王丹,栗若木 |
地址: | 100085 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 任务 调度 方法 装置 | ||
技术领域
本发明涉及第2代Hadoop中YARN平台的作业优化技术,尤其涉及一种任务调度方法和装置。
背景技术
Hadoop是当前最流行的大数据处理工具。它实现了一套分布式存储与计算系统,特别适合太字节(TB,Terabyte)、PB(Petabyte)级的数据处理,并且借助于MapReduce框架,可以使用户轻松写出分布式程序,将传统业务迁移到分布式平台上来。
目前商业化的产品多是基于第1代Hadoop的技术实现,在使用中存在单点瓶颈、资源分配不灵活、编程框架单一等问题。正在研发中的第2代Hadoop,为克服上述缺点,构建了新的底层平台YARN,负责集群的资源分配及任务调度;YARN剥离MapReduce框架成为独立的可选组件,不再与平台耦合。在新的资源调度平台YARN上,采用的调度算法是“支配资源公平”(DRF,Dominant Resource Fairness)。将用户提交的程序称为作业,每个作业将会被拆分成大量任务运行。用户在提交作业时,需要指定每个任务运行时占用的CPU资源和内存资源。YARN平台上的调度器会依次计算每个任务的CPU资源占CPU总资源的比值和内存资源占内存总资源量的比值,并取其比值大者作为该类子任务的“支配份额比”(Dominant Share)。在多个用户同时提交多个作业时,调度器会选择性地启动各类子任务,以保证各用户的总支配份额比相同。
上述调度算法中,用户在提交作业时,需要设置CPU资源需求和内存资源需求,设置的CPU资源需求或内存资源需求直接影响到作业的完成时间。设置的CPU资源需求或内存资源需求越大,每个任务运行时间越短,但受到平台调度器的限制,同时运行的任务数会减少;设置的CPU资源需求或内存资源需求越少,每个任务运行时间越长,但同时运行的任务数量会变多。因此,资源需求与任务完成时间及平台并发任务数均不是线性关系。然而目前参数的设置主要依赖于用户经验,对于缺乏丰富经验的用户来说,并不能保证合理的参数设置,从而导致作业运行时间明显大于理论最优值。
发明内容
为了解决上述技术问题,本发明提出了一种任务调度方法和装置,能够消除设置CPU资源需求和内存资源需求的主观性,从而缩短作业完成时间。
为了达到上述目的,本发明提出了一种任务调度方法,该方法包括:
对用户的任意一个任务设置相应的CPU资源需求和内存资源需求,并预测该任务的完成时间;
预测用户能够同时运行的任务数,使得YARN平台中每一个用户的支配份额比相同;
根据用户的总任务数、预测的任务的完成时间和预测的用户能够同时运行的任务数计算作业完成的总时间;
在预设的CPU资源需求范围和内存资源需求范围内,改变设置的CPU资源需求和内存资源需求,重复上述步骤,直到计算得到的作业完成的总时间最小。
优选地,所述预测任务的完成时间包括:
生成实例库,实例库保存有实例的特征值和该实例在不同的CPU资源需求和内存资源需求时的运行时间;
查找实例库中与设置的所述任务的CPU资源需求和内存资源需求均相同的实例;
计算查找到的实例的特征值和所述任务的特征值的相似度,将相似度最大的实例的运行时间作为所述任务的完成时间。
优选地,当查找不到所述实例库中与设置的所述任务的CPU资源需求和内存资源需求均相同的实例时,该方法还包括:
查找实例库中与设置的所述任务的CPU资源需求或内存资源需求相同的实例。
优选地,所述特征值包括映射Map/化简Reduce、任务类型、数据量和复杂度。
优选地,当查找不到所述实例库中与设置的所述任务的CPU资源需求或内存资源需求均相同的实例时,该方法还包括:
根据所述任务的任务类型将所述实例库中的默认实例的运行时间作为所述任务的完成时间。
优选地,所述支配份额比为用户的CPU资源使用量/min(用户的总CPU资源需求量,理论公平CPU资源量),和用户的内存资源使用量/min(用户的总内存资源需求量,理论公平内存资源量)的最大值,其中,理论公平CPU资源量=全局CPU资源总量/用户数,理论公平内存资源量=全局内存资源总量/用户数;其中,min表示取最小值。
优选地,所述根据资源分配比预测用户能够同时运行的任务数包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮(北京)电子信息产业有限公司,未经浪潮(北京)电子信息产业有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310750655.6/2.html,转载请声明来源钻瓜专利网。