System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机,尤其涉及一种物理计划生成方法、装置、设备及存储介质。
技术介绍
1、批量sparksql执行作业在云上作业数量日益增长的背景下,受hdfs集群稳定性的影响,性能出现下降的趋势。特别部分重要系统本身有链路长、关联表大、关联复杂等特点,存在资源消耗大,运行时间长、试错成本高等痛点,影响下游重要系统按时作业。
技术实现思路
1、本专利技术的主要目的在于提供一种物理计划生成方法、装置、设备及存储介质,旨在解决云上spark集群批处理作业运行缓慢、资源占用时间长的问题。
2、为实现上述目的,本专利技术提供一种物理计划生成方法,所述物理计划生成方法包括以下步骤:
3、获取sql语句集合;
4、基于预设的子查询指令,根据所述sql语句集合,构建数据集依赖关系;
5、基于预先构建的全阶代码优化算法,根据所述数据集依赖关系,获得全阶物理计划。
6、可选地,所述基于预先构建的全阶代码优化算法,根据所述数据集依赖关系,获得全阶物理计划的步骤包括:
7、根据所述数据集依赖关系,构建sql语句依赖关系;
8、基于所述全局代码优化算法,根据所述数据集依赖关系,构建全局数据集依赖关系;
9、通过sql语句中的插入语句,根据所述sql语句依赖关系和所述全局数据集依赖关系,生成所述全阶物理计划。
10、可选地,所述通过sql语句中的插入语句,根据所述sql语句依赖关系和所述全局数据集依赖
11、根据所述sql语句依赖关系,构建全阶批处理执行计划;
12、通过所述插入语句调用预设的优化器,根据所述全局数据集依赖关系对全阶批处理执行计划进行优化,生成所述全阶物理计划。
13、可选地,所述基于预设的子查询指令,根据所述sql语句集合,构建数据集依赖关系的步骤包括:
14、基于所述子查询指令,根据所述sql语句集合中的sql语句,创建虚拟表;
15、根据所述sql语句,获取元数据,并通过预设的数据管理接口将所述元数据注册到预设的缓存表中;
16、根据所述虚拟表和注册后的缓存表,构建所述数据集依赖关系。
17、可选地,所述根据所述sql语句,获取元数据,并通过预设的数据管理接口将所述元数据注册到预设的缓存表中的步骤之前,还包括:
18、获取缓存配置参数;
19、根据所述缓存配置参数,配置缓存级别和缓存方式,以供元数据注册。
20、可选地,所述基于预先构建的全阶代码优化算法,根据所述数据集依赖关系,获得全阶物理计划的步骤之前,还包括:
21、通过懒执行模式,构建全流程执行计划;
22、根据所述全流程执行计划,构建所述全阶代码优化算法。
23、可选地,所述获取sql语句集合的步骤包括:
24、获取映射文件;
25、通过预设的解析接口,对所述映射文件进行解析,获得所述sql语句集合。
26、此外,为实现上述目的,本专利技术还提供一种物理计划生成装置,所述物理计划生成装置包括:
27、语句获取模块,用于获取sql语句集合;
28、关系构建模块,用于基于预设的子查询指令,根据所述sql语句集合,构建数据集依赖关系;
29、计划生成模块,用于基于预先构建的全阶代码优化算法,根据所述数据集依赖关系,获得全阶物理计划。
30、本专利技术实施例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的物理计划生成程序,所述物理计划生成程序被所述处理器执行时实现如上所述的物理计划生成方法的步骤。
31、本专利技术实施例还提出一种计算器可读存储介质,所述计算机可读存储介质上存储有物理计划生成程序,所述物理计划生成程序被处理器执行时实现如上所述的物理计划生成方法的步骤。
32、本专利技术实施例提出的一种物理计划生成方法、装置、设备及存储介质,通过获取sql语句集合;基于预设的子查询指令,根据所述sql语句集合,构建数据集依赖关系;基于预先构建的全阶代码优化算法,根据所述数据集依赖关系,获得全阶物理计划。通过子查询指令和全阶代码优化算法,得出了全阶物理计划。由此,实现了sql作业的批量执行,解决了现有技术中云上spark集群批处理作业运行缓慢、资源占用时间长的技术问题。相较于现有技术,具有耗时短、资源消耗少的优势。
33、以上仅为本专利技术的优选实施例,并非因此限制本专利技术的专利范围,凡是利用本专利技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的
,均同理包括在本专利技术的专利保护范围内。
【技术保护点】
1.一种物理计划生成方法,其特征在于,所述物理计划生成方法包括以下步骤:
2.如权利要求1所述的物理计划生成方法,其特征在于,所述基于预先构建的全阶代码优化算法,根据所述数据集依赖关系,获得全阶物理计划的步骤包括:
3.如权利要求2所述的物理计划生成方法,其特征在于,所述通过SQL语句中的插入语句,根据所述SQL语句依赖关系和所述全局数据集依赖关系,生成所述全阶物理计划的步骤包括:
4.如权利要求1所述的物理计划生成方法,其特征在于,所述基于预设的子查询指令,根据所述SQL语句集合,构建数据集依赖关系的步骤包括:
5.如权利要求4所述的物理计划生成方法,其特征在于,所述根据所述SQL语句,获取元数据,并通过预设的数据管理接口将所述元数据注册到预设的缓存表中的步骤之前,还包括:
6.如权利要求1所述的物理计划生成方法,其特征在于,所述基于预先构建的全阶代码优化算法,根据所述数据集依赖关系,获得全阶物理计划的步骤之前,还包括:
7.如权利要求1所述的物理计划生成方法,其特征在于,所述获取SQL语句集合的步骤包括:
8.一种物理计划生成装置,其特征在于,所述物理计划生成装置包括:
9.一种终端设备,其特征在于,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的物理计划生成程序,所述物理计划生成程序被所述处理器执行时实现如权利要求1-7中任一项所述的物理计划生成方法的步骤。
10.一种计算器可读存储介质,其特征在于,所述计算机可读存储介质上存储有物理计划生成程序,所述物理计划生成程序被处理器执行时实现如权利要求1-7中任一项所述的物理计划生成方法的步骤。
...【技术特征摘要】
1.一种物理计划生成方法,其特征在于,所述物理计划生成方法包括以下步骤:
2.如权利要求1所述的物理计划生成方法,其特征在于,所述基于预先构建的全阶代码优化算法,根据所述数据集依赖关系,获得全阶物理计划的步骤包括:
3.如权利要求2所述的物理计划生成方法,其特征在于,所述通过sql语句中的插入语句,根据所述sql语句依赖关系和所述全局数据集依赖关系,生成所述全阶物理计划的步骤包括:
4.如权利要求1所述的物理计划生成方法,其特征在于,所述基于预设的子查询指令,根据所述sql语句集合,构建数据集依赖关系的步骤包括:
5.如权利要求4所述的物理计划生成方法,其特征在于,所述根据所述sql语句,获取元数据,并通过预设的数据管理接口将所述元数据注册到预设的缓存表中的步骤之前,还包括:
6....
【专利技术属性】
技术研发人员:熊均文,
申请(专利权)人:招商银行股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。