一种任务执行方法、装置及电子设备制造方法及图纸

技术编号:30907446 阅读:17 留言:0更新日期:2021-11-22 23:53
本发明专利技术实施例提供了一种任务执行方法、装置及电子设备,涉及任务调度技术领域。该方法包括:接收待执行的目标SQL任务;对所述目标SQL任务进行任务解析,得到所述目标SQL任务包括的各个目标子任务;其中,每个目标子任务关联有用于存储执行该目标子任务所需数据的目标数据源;将每个目标子任务下发至该目标子任务所关联的目标数据源,以使所述目标数据源执行所接收到的目标子任务,得到目标子结果;获取基于各个目标子结果所确定的所述目标SQL任务的目标执行结果。与现有技术相比,应用本发明专利技术实施例提供的方案,可以实现减低执行引擎的工作压力,提高SQL任务的执行效率。提高SQL任务的执行效率。提高SQL任务的执行效率。

【技术实现步骤摘要】
一种任务执行方法、装置及电子设备


[0001]本专利技术涉及任务调度
,特别是涉及一种任务执行方法、装置及电子设备。

技术介绍

[0002]当前,随着计算机技术的快速发展,各类应用场景中产生的数据的数据量激增,从而,数据库技术也随之快速发展,SQL(Structured Query Language,结构化查询语言)应运而生。
[0003]其中,SQL是一种数据库查询和程序设计语言,用于实现存取数据,以及对数据库进行查询、更新和管理等功能。进而,随着SQL的不断发展,以各类数据库作为数据源的SQL任务,在各
中发挥着越来越重要的作用。
[0004]相关技术中,SQL任务通常是由执行引擎执行的。其中,执行引擎在接收到SQL任务后,可以从该SQL任务所关联的各个数据源获取数据,并通过对所获取到的数据执行该SQL任务所指定的处理,得到该SQL任务的执行结果。
[0005]然而,在上述相关技术中,执行引擎需要完成大量的数据获取及数据处理工作,从而,导致执行引擎的工作压力较大,使得SQL任务的执行效率较低。

技术实现思路

[0006]本专利技术实施例的目的在于提供一种任务执行方法、装置及电子设备,以实现减低执行引擎的工作压力,提高SQL任务的执行效率。具体技术方案如下:
[0007]第一方面,本专利技术实施例提供了一种任务执行方法,所述方法包括:
[0008]接收待执行的目标SQL任务;
[0009]对所述目标SQL任务进行任务解析,得到所述目标SQL任务包括的各个目标子任务;其中,每个目标子任务关联有用于存储执行该目标子任务所需数据的目标数据源;
[0010]将每个目标子任务下发至该目标子任务所关联的目标数据源,以使所述目标数据源执行所接收到的目标子任务,得到目标子结果;
[0011]获取基于各个目标子结果所确定的所述目标SQL任务的目标执行结果。
[0012]可选的,一种具体实现方式中,所述对所述目标SQL任务进行任务解析,得到所述目标SQL任务包括的各个目标子任务,包括:
[0013]对所述目标SQL任务进行SQL解析,得到初始解析结果,并确定所述目标SQL任务所包括的各个表头信息;
[0014]根据各个表头信息,对所述初始解析结果进行任务拆分,得到所述目标SQL任务包括的各个目标子任务;
[0015]其中,每个目标子任务对应于目标表头信息,每个目标子任务对应的目标表头信息所表征的数据表用于存储执行该目标子任务的所需数据,每个目标子任务所关联的目标数据源为:该目标子任务对应的目标表头信息所表征的数据表所属的数据源。
[0016]可选的,一种具体实现方式中,在所述根据各个表头信息,对所述初始解析结果进
行任务拆分的步骤之前,所述方法还包括:
[0017]确定每个表头信息所表征的数据表所属的数据源的连接元数据,作为该表头信息对应的连接元数据,并为所述初始解析结果中的各个表头信息添加所对应的连接元数据;
[0018]所述根据各个表头信息,对所述初始解析结果进行任务拆分的步骤,包括:
[0019]根据各个表头信息,对添加后的所述初始解析结果进行任务拆分;
[0020]所述将每个目标子任务下发至该子任务所关联的目标数据源的步骤,包括:
[0021]按照每个目标子任务所对应目标表头信息对应的连接元数据,将每个目标子任务下发至该目标子任务所关联的目标数据源。
[0022]可选的,一种具体实现方式中,所述根据各个表头信息,对所述初始解析结果进行任务拆分,得到所述目标SQL任务包括的各个目标子任务,包括:
[0023]按照各个表头信息,对所述初始解析结果进行任务拆分,得到每个表头信息所对应的初始子任务;
[0024]判断是否存在所对应表头信息所表征数据表属于同一数据源的多个初始子任务;
[0025]若存在,则将所述多个初始子任务合并为一个目标子任务,并将除所述多个初始子任务之外的各个初始子任务,分别确定为各个目标子任务;
[0026]否则,将各个初始子任务,分别确定为各个目标子任务。
[0027]可选的,一种具体实现方式中,所述方法还包括:
[0028]确定所述目标SQL任务所包括的通过目标执行引擎所执行的各个指定子任务;
[0029]所述获取基于各个目标子结果所确定的所述目标SQL任务的目标执行结果,包括:
[0030]获取所述目标执行引擎基于各个目标子结果执行各个指定子任务所得到的执行结果,作为所述目标SQL任务的目标执行结果。
[0031]可选的,一种具体实现方式中,在所述将每个目标子任务下发至该目标子任务所关联的目标数据源的步骤之前,所述方法还包括:
[0032]根据每个目标子任务的任务内容,确定第一类子任务和第二类子任务;其中,所述第一类子任务为;通过所关联的目标数据源执行的目标子任务;所述第二类子任务为:通过所关联的目标数据源和目标执行引擎执行的目标子任务;
[0033]针对每个第二类子任务,确定该子任务中包括的通过所关联的目标数据源执行的第一任务和通过所述目标执行引擎执行的第二任务;
[0034]所述将每个目标子任务下发至该目标子任务所关联的目标数据源,包括:
[0035]将每个第一类子任务下发至所关联的目标数据源;并将每个第一任务下发至该第一任务所属第二类子任务所关联的目标数据源;
[0036]所述获取所述目标执行引擎基于各个目标子结果执行各个指定子任务所得到的执行结果的步骤,包括:
[0037]获取所述目标执行引擎基于各个第一类子结果和各个第二类子结果执行各个指定子任务所得到的执行结果;
[0038]其中,各个第一类子结果为:各个目标数据源执行各个第一类子任务所得到的目标子结果,各个第二类子结果为:所述目标执行引擎基于第三类子结果执行各个第二任务所得到结果,所述第三类子结果为:各个目标数据源执行各个第一任务的目标子结果。
[0039]可选的,一种具体实现方式中,所述目标子任务为通过所关联的目标数据源执行
的目标子任务,且数量为一个;
[0040]所述获取基于各个目标子结果所确定的所述目标SQL任务的目标执行结果,包括:
[0041]获取所述目标子任务所关联的目标数据源反馈的目标子结果,作为所确定的所述目标SQL任务的目标执行结果。
[0042]可选的,一种具体实现方式中,每个目标子任务所关联的目标数据源位于不同域中;所述将每个目标子任务下发至该目标子任务所关联的目标数据源的步骤,包括:
[0043]将每个目标子任务发送至指定电子设备,以使所述指定电子设备将该目标子任务下发至该目标子任务所关联的目标数据源;
[0044]其中,所述指定电子设备为:该目标子任务所关联的目标数据源所在域中的用于执行SQL任务的设备。
[0045]第二方面,本专利技术实施例提供了一种任务执行装置,所述装置包括:
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种任务执行方法,其特征在于,所述方法包括:接收待执行的目标SQL任务;对所述目标SQL任务进行任务解析,得到所述目标SQL任务包括的各个目标子任务;其中,每个目标子任务关联有用于存储执行该目标子任务所需数据的目标数据源;将每个目标子任务下发至该目标子任务所关联的目标数据源,以使所述目标数据源执行所接收到的目标子任务,得到目标子结果;获取基于各个目标子结果所确定的所述目标SQL任务的目标执行结果。2.根据权利要求1所述的方法,其特征在于,所述对所述目标SQL任务进行任务解析,得到所述目标SQL任务包括的各个目标子任务,包括:对所述目标SQL任务进行SQL解析,得到初始解析结果,并确定所述目标SQL任务所包括的各个表头信息;根据各个表头信息,对所述初始解析结果进行任务拆分,得到所述目标SQL任务包括的各个目标子任务;其中,每个目标子任务对应于目标表头信息,每个目标子任务对应的目标表头信息所表征的数据表用于存储执行该目标子任务的所需数据,每个目标子任务所关联的目标数据源为:该目标子任务对应的目标表头信息所表征的数据表所属的数据源。3.根据权利要求2所述的方法,其特征在于,在所述根据各个表头信息,对所述初始解析结果进行任务拆分的步骤之前,所述方法还包括:确定每个表头信息所表征的数据表所属的数据源的连接元数据,作为该表头信息对应的连接元数据,并为所述初始解析结果中的各个表头信息添加所对应的连接元数据;所述根据各个表头信息,对所述初始解析结果进行任务拆分的步骤,包括:根据各个表头信息,对添加后的所述初始解析结果进行任务拆分;所述将每个目标子任务下发至该子任务所关联的目标数据源的步骤,包括:按照每个目标子任务所对应目标表头信息对应的连接元数据,将每个目标子任务下发至该目标子任务所关联的目标数据源。4.根据权利要求2所述的方法,其特征在于,所述根据各个表头信息,对所述初始解析结果进行任务拆分,得到所述目标SQL任务包括的各个目标子任务,包括:按照各个表头信息,对所述初始解析结果进行任务拆分,得到每个表头信息所对应的初始子任务;判断是否存在所对应表头信息所表征数据表属于同一数据源的多个初始子任务;若存在,则将所述多个初始子任务合并为一个目标子任务,并将除所述多个初始子任务之外的各个初始子任务,分别确定为各个目标子任务;否则,将各个初始子任务,分别确定为各个目标子任务。5.根据权利要求1

4任一项所述的方法,其特征在于,所述方法还包括:确定所述目标SQL任务所包括的通过目标执行引擎所执行的各个指定子任务;所述获取基于各个目标子结果所确定的所述目标SQL任务的目标执行结果,包括:获取所述目标执行引擎基于各个目标子结果执行各个指定子任务所得到的执行结果,作为所述目标SQL任务的目标执行结果。6.根据权利要求5所述的方法,其特征在于,在所述将每个目标子任务下发至该目标子
任务所关联的目标数据源的步骤之前,所述方法还包括:根据...

【专利技术属性】
技术研发人员:段雄
申请(专利权)人:杭州海康威视数字技术股份有限公司
类型:发明
国别省市:

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

1