[发明专利]一种基于用户作业流程的分布式集群资源调度方法在审
申请号: | 202110472138.1 | 申请日: | 2021-04-29 |
公开(公告)号: | CN113157421A | 公开(公告)日: | 2021-07-23 |
发明(设计)人: | 胡亚红;邱圆圆;毛家发 | 申请(专利权)人: | 浙江工业大学 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50;G06F16/901 |
代理公司: | 杭州天正专利事务所有限公司 33201 | 代理人: | 王兵 |
地址: | 310014 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 用户 作业 流程 分布式 集群 资源 调度 方法 | ||
本发明涉及一种基于用户作业流程的分布式集群资源调度方法。本发明首先分析作业所包含的各个子作业间的执行顺序约束关系,确定子作业的串并行执行顺序。再根据子作业的执行顺序为其进行资源的逻辑分配并预测在此资源配置下各子作业的执行时间,进而通过计算作业流程中的关键路径预测出作业的执行时间。通常用户提交的作业具有完成时间的约束,因此预测的作业完成时间可以作为集群能否及时为用户提供服务的依据。实验证明,相对于Spark默认的资源分配算法,本发明提出的算法能够缩短16.81%的作业执行时间。本发明提出的算法能够提高子作业运行的并行度、缩短作业执行时间,有助于提升云服务平台、超算中心和数据中心等机构的服务质量。
技术领域
本发明涉及分布式计算领域,尤其涉及一种基于用户作业流程的分布式集群资源调度方法。
背景技术
超算中心、云服务提供商等越来越注重提高自身的服务质量(QoS,Quality ofService),按时完成用户提交的作业是高质量服务的基本保证。因此在为用户提供服务前,预测用户作业的执行时间非常有必要。如果预测出的作业完成时间不能满足用户的需求,则超算中心等应该告知用户,方便用户决定是否仍旧提交作业。
为了预测作业的运行时间,常用方法是先运行作业的一部分,再按照作业数量的比例计算得到用户作业执行时间的预测值。由于作业执行时间与作业量之间并非线性关系,这样得到的预测结果准确性偏低。
大规模科学计算等用户作业包含内在的作业流程,即作业可以划分为多个子作业,各子作业间由于存在数据依赖关系而具有执行顺序的约束。如何根据子作业的执行顺序约束和集群的实时资源进行资源调度,从而提高子作业执行并行度、缩短用户作业执行时间是一个值得研究的问题。
常用的对于包含内在流程的用户作业的资源调度算法是静态的,没有充分考虑分布式集群的实时资源状态和子作业之间的执行顺序关系,无法最大限度地发挥集群的性能。
发明内容
本发明为克服上述的不足之处,目的在于提供一种基于用户作业流程的分布式集群资源调度方法。本发明首先根据子作业间的执行顺序约束关系,为子作业进行资源的逻辑分配并预测在此资源配置下各子作业的执行时间,进而通过计算作业流程中的关键路径预测出作业的执行时间。预测的作业完成时间可以作为能否为用户提供服务的依据。
本发明是通过以下技术方案达到上述目的:一种基于用户作业流程的分布式集群资源调度方法,包括如下步骤:
(1)对用户作业进行分析,生成并行应用有向无环图PAD(Parallel ApplicationDirected Acyclic Graph),确定各子作业的执行顺序约束;
(2)通过正向和逆向的广度优先搜索,得到两组子作业的串并行执行关系;
(3)根据正向和逆向的子作业串并行执行关系,分别为子作业进行逻辑资源分配,得到资源分配方案1(对应正向搜索得到的子作业串并行执行关系)和资源分配方案2(对应逆向搜索得到的子作业串并行执行关系);
(4)分别在资源分配方案1和资源分配方案2下预测各子作业的执行时间;
(5)分别计算出资源分配方案1和资源分配方案2下PAD中的关键路径。执行时间较短的关键路径即为完成作业的关键路径,其对应的各子作业完成时间之和为预测的用户作业执行时间;
(6)若作业预测执行时间满足用户要求,按照资源分配方案为作业分配集群资源并运行作业;否则告知用户,请用户选择是否继续提交作业。
作为优选,所述步骤(1)具体如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江工业大学,未经浙江工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110472138.1/2.html,转载请声明来源钻瓜专利网。