作业调度方法、装置和系统制造方法及图纸

技术编号:23557844 阅读:27 留言:0更新日期:2020-03-25 03:33
本公开提供了一种作业调度方法、装置和系统。该作业调度方法包括:获取待执行的多个作业实例,每个待执行的作业实例具有执行信息和关联信息;根据待执行的多个作业实例的关联信息,确定待执行的多个作业实例中是否包括与当前执行的作业实例具有关联关系的作业实例;在待执行的多个作业实例中包括与当前执行的作业实例具有关联关系的作业实例的情况下,根据执行信息,确定具有关联关系的作业实例中,与当前执行的作业实例不冲突的至少一个作业实例;以及根据调度规则,将与当前执行的作业实例不具有关联关系的作业实例及确定的至少一个作业实例分配给至少两个执行节点,以供至少两个执行节点并行地执行分配得到的作业实例。

Job scheduling methods, devices and systems

【技术实现步骤摘要】
作业调度方法、装置和系统
本公开涉及计算机
,更具体地,涉及一种作业调度方法、装置和系统。
技术介绍
随着移动互联网技术的发展,各企业的数据量呈指数式增长,而如何利用海量数据资源成为各企业提高核心竞争力的关键。在大数据技术的实际应用中,比如数据仓库建立、数据挖掘和分析等,都需要运行大量的作业来完成对数据的采集、清洗、加工运算及推送。为了确保作业能够有序和高效的执行,需要一个作业调度系统来管理、触发、执行这些作业。在实现本公开构思的过程中,专利技术人发现现有技术中至少存在如下问题:现有的作业调度系统虽然能够解决作业的触发执行和依赖关系等基本功能,但是随着数据仓库规模不断变大,作业数据量激增,在作业执行效率方面逐渐无法满足需求,例如作业并行度低,能够并行的作业以串行方式执行,作业吞吐量小等,从而存在浪费系统软硬件资源及不能及时产出重要数据的缺陷。
技术实现思路
有鉴于此,本公开提供了一种能够提高作业并行度的作业调度方法、装置和系统。本公开的一个方面提供了一种作业调度方法,包括:获取待执行的多个作业实例,每个本文档来自技高网...

【技术保护点】
1.一种作业调度方法,包括:/n获取待执行的多个作业实例,每个待执行的作业实例具有执行信息和关联信息;/n根据待执行的多个作业实例的关联信息,确定所述待执行的多个作业实例中是否包括与当前执行的作业实例具有关联关系的作业实例;/n在所述待执行的多个作业实例中包括与当前执行的作业实例具有关联关系的作业实例的情况下,根据所述执行信息,确定具有关联关系的作业实例中,与当前执行的作业实例不冲突的至少一个作业实例;以及/n根据调度规则,将与所述当前执行的作业实例不具有关联关系的作业实例及确定的所述至少一个作业实例分配给至少两个执行节点,以供所述至少两个执行节点并行地执行分配得到的作业实例。/n

【技术特征摘要】
1.一种作业调度方法,包括:
获取待执行的多个作业实例,每个待执行的作业实例具有执行信息和关联信息;
根据待执行的多个作业实例的关联信息,确定所述待执行的多个作业实例中是否包括与当前执行的作业实例具有关联关系的作业实例;
在所述待执行的多个作业实例中包括与当前执行的作业实例具有关联关系的作业实例的情况下,根据所述执行信息,确定具有关联关系的作业实例中,与当前执行的作业实例不冲突的至少一个作业实例;以及
根据调度规则,将与所述当前执行的作业实例不具有关联关系的作业实例及确定的所述至少一个作业实例分配给至少两个执行节点,以供所述至少两个执行节点并行地执行分配得到的作业实例。


2.根据权利要求1所述的方法,其中:
所述执行信息包括控制属性,所述控制属性包括自身并行执行属性;
根据所述执行信息,确定具有关联关系的作业实例中,与当前执行的作业实例不冲突的至少一个作业实例包括:
确定具有关联关系的作业实例中是否包括与当前执行的作业实例属于同一作业的作业实例;以及
在具有关联关系的作业实例中包括与当前执行的作业实例属于同一作业的作业实例,且该属于同一作业的作业实例的自身并行执行属性为是的情况下,确定该属于同一作业的作业实例与当前执行的、属于同一作业的作业实例不冲突。


3.根据权利要求2所述的方法,其中:
所述控制属性还包括上游并行执行属性和下游并行执行属性,所述执行信息还包括执行时间信息;
根据所述执行信息,确定具有关联关系的作业实例中,与当前执行的作业实例不冲突的至少一个作业实例还包括:
在具有关联关系的作业实例中不包括与当前执行的作业实例属于同一作业的作业实例的情况下,或者确定所述属于同一作业的作业实例与当前执行的、属于同一作业的作业实例不冲突的情况下,确定具有关联关系的作业实例中是否包括当前执行的作业实例的上游和/或下游作业实例;以及
在具有关联关系的作业实例中包括当前执行的作业实例的上游和/或下游作业实例的情况下,根据所述上游和/或下游作业实例的下游并行执行属性和/或上游并行执行属性及执行时间信息,确定该上游和/或下游作业实例是否与当前执行的作业实例相冲突。


4.根据权利要求3所述的方法,其中,根据所述上游和/或下游作业实例的下游和/或上游并行执行属性及执行时间信息,确定所述上游和/或下游作业实例是否与当前执行的作业实例相冲突包括:
在所述上游和/或下游作业实例的执行时间信息与当前执行的作业实例的执行时间信息不冲突,且所述上游和/或下游作业实例的下游并行执行属性和/或上游并行执行属性为是的情况下,确定所述上游和/或下游作业实例是与当前执行的作业实例不冲突的作业实例;或者
在所述上游和/或下游作业实例的执行时间信息与当前执行的作业实例的执行时间信息不冲突,且所述上游和/或下游作业实例的下游并行执行属性和/或上游并行执行属性为否的情况下:
确定所述上游和/或下游作业实例是否为重点作业实例;以及
在所述上游和/或下游作业实例是重点作业实例的情况下,停止当前执行的作业实例中所述上游和/或下游作业实例的下游和/或上游作业实例的执行,并确定所述上游和/或下游作业实例是与当前执行的作业实例不冲突的作业实例。


5.根据权利要求3所述的方法,其中,根据所述执行信息,确定具有关联关系的作业实例中,与当前执行的作业实例不冲突的至少一个作业实例还包括:
在与当前执行的、属于同一作业的作业实例不冲突的属于同一作业的作业实例中,不包括当前执行的作业实例的上游作业实例和下游作业实例的情况下,确定所述属于同一作业的作业实例是与当前执行的作业实例不冲突的作业实例。


6.根据权利要求2所述的方法,其中,所述控制属性还包括跳跃执行属性,所述方法还包括:
在所述待执行的作业实例的所述跳跃执行属性为是,且存在与所述待执行的作业实例属于同一作业、且执行时间大于所述待执行的作业实例的执行时间的作业实例的情况下,清除所述待执行的作业实例;或者
在所述待执行的作业实例的所述跳跃执行属性为是,且不存在与所述待执行的作业实例属于同一作业、且执行时间大于所述待执行的作业实例的执行时间的作业实例的情况下,或者所述待执行的作业实例的所述跳跃执行属性为否的情况下,根据待执行的多个作业实例的关联信息,确定所述待执行的多个作业实例中是否包括与当前执行的作业实例具有关联关系的作业实例,
其中,所述执行时间信息包括所述执行时间,与所述待执行的作业实例属于同一作业、且执行时间大于所述待执行的作业实例是所述待执行的多个作业实例之一。


7.根据权利要求1所述的方法,其中,根据调...

【专利技术属性】
技术研发人员:张强
申请(专利权)人:北京京东金融科技控股有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1