数据调度方法、装置及电子设备制造方法及图纸

技术编号:29583509 阅读:19 留言:0更新日期:2021-08-06 19:41
本发明专利技术公开一种数据调度方法、装置及电子设备,该方法包括:当接收到第一目标任务的圈人请求后,将第一目标任务存储在第一任务集合中;在第二任务集合中包含的任务的数量小于预设阈值的情况下,才可从第一任务集合中调取任务,并在将第二目标任务从第一任务集合中调取到第二任务集合中后,执行第二目标任务的圈人请求,将第二目标任务的状态设置为正在圈人状态,当第二目标任务的圈人请求执行完成后,将第二目标任务的状态修改为圈人完成状态,并在第二任务集合中存在处于圈人完成状态的第三目标任务时,触发第三目标任务的推送请求,并执行第三目标任务推送请求。由此保障了没有执行推送请求的任务不会被删掉,从而大大降低任务执行失败的数量。

【技术实现步骤摘要】
数据调度方法、装置及电子设备
本专利技术涉及数据处理领域,尤其涉及一种数据调度方法、装置及电子设备。
技术介绍
在数据资源调度时,通过会预先将需要调度的数据写入到datahub(一种流式数据处理的技术或者平台)的项目(project)的主题(topic)中,当执行到某个调度任务后,再从datahub调取相对应的数据。假设某个调度任务包括圈人任务和推送任务,圈人任务表示圈选信息推送的对象,在圈人任务执行后将圈选的对象的信息存储到datahub的项目一个主题中,例如一个圈人任务可以对应一个主题,每个圈人任务执行完成后等待执行推送任务,当执行推送任务时,从datahub中调取圈选对象的信息,并向圈选的对象进行数据推送。但是由于datahub的一个项目中可以存储的主题的数量是有限制的,当一个项目中包含的主题的数量超过了最大限制时,若再接收到新的调度任务后,则会删除掉最先存储的调度任务,但是该最先存储的调度任务可能还未执行推送任务,当执行到该推送任务时,无法获取到调度资源,则推送任务执行失败,由此,当前datahub的调度机制会导致大量调度任务执行失败。
技术实现思路
有鉴于此,本专利技术实施例公开的一种数据调度方法、装置及电子设备,解决了现有技术中,在资源达到上限的情况下,删除掉未执行推送请求的任务从而导致任务执行失败的问题,提高了任务执行成功的概率。本专利技术实施例公开了一种数据调度方法,包括:当接收到第一目标任务的圈人请求后,将所述第一目标任务存储在第一任务集合中;当检测到第二任务集合中包含的任务的数量小于预设的阈值的情况下,从所述第一任务集合中调取第二目标任务;所述第二目标任务为所述第一任务集合中满足预设条件的任务;所述预设的阈值小于或者等于datahub的项目中能够存储的主题的数量的最大上限值;执行所述第二目标任务的圈人请求,将所述第二目标任务的状态设置为正在圈人状态,并在所述第二目标任务的圈人请求执行完成后,将所述第二目标任务从正在圈人状态修改为圈人完成状态;当所述第二任务集合中存在处于圈人完成状态的第三目标任务时,触发所述第三目标任务的推送请求,并执行所述第三目标任务的推送请求。可选的,所述当接收到第一目标任务的圈人请求后,将所述第一目标任务存储在第一任务集合中,包括:当接收到第一目标任务的圈人请求后,根据接收到所述第一目标任务的圈人请求的时间,设置所述第一目标任务的优先级;接收到第一目标任务的圈人请求的时间越早,则所述第一目标任务的优先级越高;将所述第一目标任务存储在所述第一任务集合中。可选的,所述预设的调取条件为所述第一任务集合中优先级最高的任务。可选的,数据调度方法还包括:所述第二目标任务处于圈人完成状态时,触发所述第二目标任务的推送请求,并执行所述第二目标任务的推送请求;当所述第二目标任务的推送请求执行完成后,从所述第二任务集合中删除所述第二目标任务。可选的,所述执行所述第三目标任务的推送请求,包括:检测所述第三目标任务是否满足预设的推送条件;所述预设的推送条件至少包括:所述第三目标任务处于圈人完成状态;若所述第三目标任务符合所述预设的推送条件,则从所述第二任务集合中调取所述第二目标任务并执行所述第二目标任务的推送请求。可选的,数据调度方法还包括:当所述第二任务集合中存在处于圈人完成状态的第三目标任务的情况下,将所述第三目标任务推送到第三任务集合中;基于所述第三任务集合中包含的任务的数量,确定并发调度的任务的数量。可选的,所述预设的调取条件为第一任务集合中的周期任务。本专利技术实施例公开了一种数据调度装置,包括:预存储单元,用于当接收到第一目标任务的圈人请求后,将所述第一目标任务存储在第一任务集合中;调取单元,用于当检测到第二任务集合中包含的任务的数量小于预设的阈值的情况下,从所述第一任务集合中调取第二目标任务;所述第二目标任务为所述第一任务集合中满足预设条件的任务;所述预设的阈值小于或者等于datahub的项目中能够存储的主题的数量的最大上限值;状态设置单元,用于执行所述第二目标任务的圈人请求,将所述第二目标任务的状态设置为正在圈人状态,并在所述第二目标任务的圈人请求执行完成后,将所述第二目标任务从正在圈人状态修改为圈人完成状态;推送请求执行单元,用于当第二任务集合中存在处于圈人完成状态的第三目标任务时,触发所述第三目标任务的推送请求,并执行所述第三目标任务的推送请求。可选的,所述预存储单元,包括:优先级设置子单元,用于当接收到第一目标任务的圈人请求后,根据接收到所述第一目标任务的圈人请求的时间,设置所述第一目标任务的优先级;接收到第一目标任务的圈人请求的时间越早,则所述第一目标任务的优先级越高;预存储子单元,用于将所述第一目标任务存储在所述第一任务集合中。本专利技术实施例公开了一种电子设备,所述电子设备包括:存储器和处理器;所述存储器用于存储程序;所述处理器用于执行所述存储器中的程序时,至少执行前述的数据调度方法。本实施例中,调度系统维护了两个任务集合,其中,第一任务集合中存储有调度系统接收到的任务,第二任务集合从第一任务集合中调取任务,并且需要在第二任务集合中包含的任务的数量小于预设的阈值的情况下,才可以从第一任务集合中调取任务,并在将第二目标任务从第一任务集合中调取到第二任务集合中后,执行该第二目标任务的圈人请求,将该第二目标任务的状态设置为正在圈人状态,当第二目标任务的圈人请求执行完成后,将该第二目标任务的状态修改为圈人完成状态,并在第二任务集合中存在处于圈人完成状态的第三目标任务时,触发第三目标任务的推送请求,并执行该第三目标任务的推送请求。由此,保证了第二任务集合中的任务的数量不超过datahub的项目中能够存储的主题的最大上限值,并且只有调取到第二任务集合中的任务才执行圈人请求,那么才会在datahub的项目的主题中存储数据,在第二任务集合中的任务的数量不超过datahub的项目中能够存储的主题的最大上限值的情况下,datahub的项目中存储的主题的数量也不会超过最大上限值,由此,保障了没有执行推送请求的任务不会被删除掉,从而大大降低了任务执行失败的数量。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1示出了本专利技术实施例提供的一种数据调度方法的流程示意图;图2示出了本专利技术实施例提供的一种数据调度方法的又一流程示意图;图3示出了本专利技术实施例提供的一种数据调度方法的另一流程示意图;图4示出了本专利技术实施例提供的一种数据调度装置的结构示意图;图5示出了本专利技术实施例提供的一种电子设备的结构示意图。...

【技术保护点】
1.一种数据调度方法,其特征在于,包括:/n当接收到第一目标任务的圈人请求后,将所述第一目标任务存储在第一任务集合中;/n当检测到第二任务集合中包含的任务的数量小于预设的阈值的情况下,从所述第一任务集合中调取第二目标任务;所述第二目标任务为所述第一任务集合中满足预设条件的任务;所述预设的阈值小于或者等于datahub的项目中能够存储的主题的数量的最大上限值;/n执行所述第二目标任务的圈人请求,将所述第二目标任务的状态设置为正在圈人状态,并在所述第二目标任务的圈人请求执行完成后,将所述第二目标任务从正在圈人状态修改为圈人完成状态;/n当所述第二任务集合中存在处于圈人完成状态的第三目标任务时,触发所述第三目标任务的推送请求,并执行所述第三目标任务的推送请求。/n

【技术特征摘要】
1.一种数据调度方法,其特征在于,包括:
当接收到第一目标任务的圈人请求后,将所述第一目标任务存储在第一任务集合中;
当检测到第二任务集合中包含的任务的数量小于预设的阈值的情况下,从所述第一任务集合中调取第二目标任务;所述第二目标任务为所述第一任务集合中满足预设条件的任务;所述预设的阈值小于或者等于datahub的项目中能够存储的主题的数量的最大上限值;
执行所述第二目标任务的圈人请求,将所述第二目标任务的状态设置为正在圈人状态,并在所述第二目标任务的圈人请求执行完成后,将所述第二目标任务从正在圈人状态修改为圈人完成状态;
当所述第二任务集合中存在处于圈人完成状态的第三目标任务时,触发所述第三目标任务的推送请求,并执行所述第三目标任务的推送请求。


2.根据权利要求1所述的方法,其特征在于,所述当接收到第一目标任务的圈人请求后,将所述第一目标任务存储在第一任务集合中,包括:
当接收到第一目标任务的圈人请求后,根据接收到所述第一目标任务的圈人请求的时间,设置所述第一目标任务的优先级;接收到第一目标任务的圈人请求的时间越早,则所述第一目标任务的优先级越高;
将所述第一目标任务存储在所述第一任务集合中。


3.根据权利要求2所述的方法,其特征在于,所述预设的调取条件为所述第一任务集合中优先级最高的任务。


4.根据权利要求1所述的方法,其特征在于,数据调度方法还包括:
所述第二目标任务处于圈人完成状态时,触发所述第二目标任务的推送请求,并执行所述第二目标任务的推送请求;当所述第二目标任务的推送请求执行完成后,从所述第二任务集合中删除所述第二目标任务。


5.根据权利要求1所述的方法,其特征在于,所述执行所述第三目标任务的推送请求,包括:
检测所述第三目标任务是否满足预设的推送条件;所述预设的推送条件至少包括:所述第三目标任务处于圈人完成状态;
若所述第三目标任务符合所述预设的推送条件,则从所述第二任务集合中调取所述第二目标任务并...

【专利技术属性】
技术研发人员:黄淑宁张杰涂山山王少帅朱佳明
申请(专利权)人:北京轻松筹信息技术有限公司
类型:发明
国别省市:北京;11

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

1