[发明专利]工作流调度方法、服务器和介质在审
申请号: | 202010207152.4 | 申请日: | 2020-03-23 |
公开(公告)号: | CN113434265A | 公开(公告)日: | 2021-09-24 |
发明(设计)人: | 赵凯 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06Q10/10;G06Q40/00 |
代理公司: | 北京成创同维知识产权代理有限公司 11449 | 代理人: | 李镇江 |
地址: | 英属开曼群岛大*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 工作流 调度 方法 服务器 介质 | ||
本发明提供了一种工作流调度方法、服务器和介质。该方法包括:在组成待运行工作流的有向无环图的全部节点中,选择入度数为初始值且状态为待运行的一个或多个节点,作为待运行节点;将所述待运行节点运行完成,得到运行完成节点;将所述运行完成节点的下游节点的入度数减少一个预设单位。本发明减小了上游节点任务状态检查耗时长对调度性能造成的影响。
技术领域
本发明涉及信息处理领域,具体而言,涉及一种工作流调度方法、服务器和介质。
背景技术
随着网络的发展,信息处理越来越规模化。经常需要对包含许许多多任务的工作流进行调度。调度的含义是将工作流中的各节点任务根据节点任务的性质分配到不同的任务执行节点去执行。在工作流中,各节点任务有其自己的上游节点任务和下游节点任务。上游节点任务是指当前节点任务的执行所依赖的节点任务,只有当前节点任务的上游节点任务全都执行完毕,当前节点任务才能执行。下游节点任务是指依赖当前节点任务的执行的节点任务。当前节点任务执行完后,下游节点任务才能执行。
由于工作流中,各节点任务存在依赖关系,在大数据的情形下,某个节点任务的执行可能依赖几万或数十万的上游节点任务的执行,因此,当调用当前节点任务执行时,会因为依赖的上游节点任务过多,上游节点任务状态检查要花费大量时间,会造成执行节点任务延迟,调度性能不高。
发明内容
有鉴于此,本发明旨在减小上游节点任务状态检查耗时长对调度性能造成的影响。
为了达到这个目的,根据本发明的第一方面,本发明实施例提供了一种工作流调度方法,包括:
在组成待运行工作流的有向无环图的全部节点中,选择入度数为初始值且状态为待运行的一个或多个节点,作为待运行节点;
将所述待运行节点运行完成,得到运行完成节点;
将所述运行完成节点的下游节点的入度数减少一个预设单位。
可选地,所述方法还包括:计算所述待运行工作流的有向无环图的全部节点的入度数。
可选地,所述全部节点中的根节点的入度数为初始值。
可选地,所述计算所述待运行工作流的有向无环图的全部节点的入度数,包括:
确定所述有向无环图中指向某一特定节点的有向边数;
将所述有向变数乘以预设单位再加上所述初始值的结果,作为所述特定节点的入度数。
可选地,将所述待运行节点运行完成,得到运行完成节点的过程中,所述方法还包括:
运行过程中,标记节点状态为运行中;
运行完成后,标记节点状态为终态。
可选地,所述方法还包括:将所述全部节点的入度数发送至服务器进行保存;相应地,所述将所述运行完成节点的下游节点的入度数减少一个预设单位,包括:在所述服务器上将所述运行完成节点的下游节点的入度数减少一个预设单位。
根据本发明的第二方面,提供了一种工作流调度装置,包括:
待运行节点选择单元,用于在组成待运行工作流的有向无环图的全部节点中,选择入度数为初始值且状态为待运行的一个或多个节点,作为待运行节点;
运行单元,用于将所述待运行节点运行完成,得到运行完成节点;
入度数减少单元,用于将所述运行完成节点的下游节点的入度数减少一个预设单位。
可选地,所述装置还包括:入度数计算单元,用于计算所述待运行工作流的有向无环图的全部节点的入度数。
可选地,所述全部节点中的根节点的入度数为初始值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010207152.4/2.html,转载请声明来源钻瓜专利网。