满负荷场景下基于图数据血缘的融合调度方法、装置制造方法及图纸

技术编号:38889050 阅读:14 留言:0更新日期:2023-09-22 14:15
本发明专利技术提供了一种满负荷场景下基于图数据血缘的融合调度方法和装置,方法包括:当源头表触发更新时,逐级查询源头表的子表,将本次触发的多级子表视为第一任务批次;得到至少一个第一任务批次;将同一第一任务批次中的子表在调度执行前进行第一规则校验,通过第一规则校验的子表将被调度执行;在预执行队列中的任务根据配置规则,将队列中的N个第一任务批次进行融合,得到第二任务批次;待执行队列中的任务批次执行完成后,拉取第二任务批次进行执行。本发明专利技术提供的满负荷场景下基于图数据血缘的融合调度方法、装置,根据血缘信息,优化任务调度执行策略,减少重复执行,保证在有限资源下更多的任务的顺利运行。源下更多的任务的顺利运行。源下更多的任务的顺利运行。

【技术实现步骤摘要】
满负荷场景下基于图数据血缘的融合调度方法、装置


[0001]本专利技术涉及数据管理
,具体而言,涉及一种满负荷场景下基于图数据血缘的融合调度方法、装置、设备和计算机可读存储介质。

技术介绍

[0002]本专利技术对于
技术介绍
的描述属于与本专利技术相关的相关技术,仅仅是用于说明和便于理解本专利技术的
技术实现思路
,不应理解为申请人明确认为或推定申请人认为是本专利技术在首次提出申请的申请日的现有技术。
[0003]近年来,随着数据中台的发展和应用场景的增多,数据间的血缘关系也越来越复杂,往往一个源头表更新时会触发多级子表,子表之前也会有血缘关系,不做优化,极可能一个子表会被触发多次,造成计算资源的浪费;同时,两个或多个源头表更新时,不同源头表触发的子表间也可能会有血缘关系,这种情况下很有可能造成各子表间互相影响,要不子表不触发更新,要不子表被触发多次更新。当调度处于满负荷状态时,联动的更新方式,会使大量的子表任务被触发,大概率出现短时间的某个任务被重复调用的情况,但此任务所产生的数据,最终会以最后一个任务为准,因此中间的任务执行变得没有必要,同时也占用着计算资源,这使得资源的有效利用率不高,任务的调度和执行变得低下。也就是说,现有技术中,常见的血缘调度在满负荷的场景下会出现排队、老任务还未执行完成新任务又产出的情况。
[0004]为了解决上述技术问题,本专利技术提出了一种满负荷场景下基于图数据血缘的融合调度方法、装置,根据血缘信息,优化任务调度执行策略,减少重复执行,保证在有限资源下更多的任务的顺利运行。

技术实现思路

[0005]本专利技术提供了一种满负荷场景下基于图数据血缘的融合调度方法、装置,根据血缘信息,优化任务调度执行策略,减少重复执行,保证在有限资源下更多的任务的顺利运行。
[0006]本专利技术第一方面的实施例提供了一种满负荷场景下基于图数据血缘的融合调度方法,包括如下步骤:当源头表触发更新时,逐级查询源头表的子表,将本次触发的多级子表视为第一任务批次;得到至少一个第一任务批次,同一个第一任务批次的任务被放到预执行队列;将同一第一任务批次中的子表在调度执行前进行第一规则校验,通过第一规则校验的子表将被调度执行;在预执行队列中的任务根据配置规则,将队列中的N个第一任务批次进行融合,得到第二任务批次,第二任务批次被放置在预执行队列的最前面;其中,N≥2;待执行队列中的任务批次执行完成后,从预执行队列中拉取最前的任务批次进行执行。
[0007]优选地,在构建至少一个第一任务批次的过程中对子表进行第二规则校验,通过第二规则校验的子表被放入到相应的第一任务批次中。
[0008]优选地,第二规则校验包括:判断是否要等待所有父表更新;和/或,子表是否为定
时更新。
[0009]优选地,在预执行队列中的任务根据配置规则,将队列中的N个第一任务批次进行融合,得到第二任务批次,第二任务批次被放置在预执行队列的最前面步骤中,将队列中最前面的N个第一任务批次进行融合。
[0010]优选地,在预执行队列中的任务根据配置规则,将队列中最前的N个第一任务批次进行融合,得到第二任务批次的步骤,具体包括如下过程:根据参数设置,从预执行队列取N个符合要求的第一任务批次;为N个第一任务批次中的涉及的子表进行去重;重新组织血缘关系生成第二任务批次,将第二任务批次放到预执行队列的最前面。
[0011]优选地,参数设置包括每个第一任务批次可以被融合多少次,和/或每次可以融合第一任务批次的数目上限。
[0012]优选地,为N个第一任务批次中的涉及的子表进行去重的步骤中,梳理所有子表之间的血缘关系,如果存在相同的子表,则只保留一个子表,在去重的过程中将不同第一任务批次间该表的父表和子表重新构建。
[0013]本专利技术第二方面的实施例还提供了一种满负荷场景下基于图数据血缘的融合调度装置,包括:查询模块,查询模块被配置为当源头表触发更新时,逐级查询源头表的子表,将本次触发的多级子表视为第一任务批次;第一任务队列模块,第一任务队列模块被配置为得到至少一个第一任务批次,同一个第一任务批次的任务被放到预执行队列;第一规则校验模块,第一规则校验模块被配置为将同一第一任务批次中的子表在调度执行前进行第一规则校验,通过第一规则校验的子表将被调度执行;第二任务队列模块,第二任务队列模块被配置为在预执行队列中的任务根据配置规则,将队列中的N个第一任务批次进行融合,得到第二任务批次,第二任务批次被放置在预执行队列的最前面;其中,N≥2;执行模块,执行模块被配置为待执行队列中的任务批次执行完成后,从预执行队列中拉取最前的任务批次进行执行。
[0014]本专利技术第三方面的实施例还提供了一种满负荷场景下基于图数据血缘的融合调度设备,其包括存储器和处理器;其中,存储器用于存储可执行程序代码;处理器用于读取存储器中存储的可执行程序代码以执行满负荷场景下基于图数据血缘的融合调度方法。
[0015]本专利技术第四方面的实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现满负荷场景下基于图数据血缘的融合调度方法。
[0016]本专利技术提供的满负荷场景下基于图数据血缘的融合调度方法、装置、设备和计算机可读存储介质,根据血缘信息,优化任务调度执行策略,减少重复执行,保证在有限资源下更多的任务的顺利运行。
[0017]本专利技术的附加方面和优点将在下面的描述部分中变得明显,或通过本专利技术的实践了解到。
附图说明
[0018]本专利技术的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
[0019]图1示出根据本专利技术实施例的满负荷场景下基于图数据血缘的融合调度方法的流
程图;
[0020]图2为单一批次调度示意图;
[0021]图3为不同批次调度且批次间存在血缘关系示意图;
[0022]图4为不同批次调度且批次间无血缘关系示意图;
[0023]图5是本说明书满负荷场景下基于图数据血缘的融合调度设备的一个实施例的结构图;
[0024]图6是本说明书满负荷场景下基于图数据血缘的融合调度方法的计算机可读存储介质的一个实施例的结构图。
具体实施方式
[0025]为了能够更清楚地理解本专利技术的上述目的、特征和优点,下面结合附图和具体实施方式对本专利技术进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
[0026]在下面的描述中阐述了很多具体细节以便于充分理解本专利技术,但是,本专利技术还可以采用其他不同于在此描述的其他方式来实施,因此,本专利技术的保护范围并不受下面公开的具体实施例的限制。
[0027]下述讨论提供了本专利技术的多个实施例。虽然每个实施例代表了专利技术的单一组合,但是本专利技术不同实施例可以替换,或者合并组合,因此本专利技术也可认为包含所记载的相同和/或不同实施例的所有可能组合。因而,如果一个实施例包含A、B、C,另一个实施例包含B和D的组本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种满负荷场景下基于图数据血缘的融合调度方法,其特征在于,包括如下步骤:当源头表触发更新时,逐级查询所述源头表的子表,将本次触发的多级子表视为第一任务批次;得到至少一个第一任务批次,同一个所述第一任务批次的任务被放到预执行队列;将同一第一任务批次中的子表在调度执行前进行第一规则校验,通过所述第一规则校验的子表将被调度执行;在所述预执行队列中的任务根据配置规则,将队列中的N个第一任务批次进行融合,得到第二任务批次,所述第二任务批次被放置在所述预执行队列的最前面;其中,N≥2;待所述执行队列中的任务批次执行完成后,从所述预执行队列中拉取最前的任务批次进行执行。2.根据权利要求1所述的满负荷场景下基于图数据血缘的融合调度方法,其特征在于,在构建至少一个所述第一任务批次的过程中对子表进行第二规则校验,通过所述第二规则校验的子表被放入到相应的第一任务批次中。3.根据权利要求2所述的满负荷场景下基于图数据血缘的融合调度方法,其特征在于,所述第二规则校验包括:判断是否要等待所有父表更新;和/或,子表是否为定时更新。4.根据权利要求1所述的满负荷场景下基于图数据血缘的融合调度方法,其特征在于,所述在所述预执行队列中的任务根据配置规则,将队列中的N个第一任务批次进行融合,得到第二任务批次,所述第二任务批次被放置在所述预执行队列的最前面步骤中,将队列中最前面的N个第一任务批次进行融合。5.根据权利要求1

4中任意一项所述的满负荷场景下基于图数据血缘的融合调度方法,其特征在于,所述在所述预执行队列中的任务根据配置规则,将队列中最前的N个第一任务批次进行融合,得到第二任务批次的步骤,具体包括如下过程:根据参数设置,从所述预执行队列取N个符合要求的第一任务批次;为N个第一任务批次中的涉及的子表进行去重;重新组织血缘关系生成第二任务批次,将所述第二任务批次放到预执行队列的最前面。6.根据权利要求5所述的满负荷场景下基于图...

【专利技术属性】
技术研发人员:瞿珂邓德亮赵恒杰翟士丹
申请(专利权)人:北京海致科技集团有限公司
类型:发明
国别省市:

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

1