数据查询方法、装置、设备、介质及程序产品与流程

摘要: 本申请涉及计算机,特别涉及一种数据查询方法、装置、设备、介质及程序产品。背景技术:1、执行计划是指数据库优化器针对给定查询语句生成的详细操作方案,执行计划包括在...
数据查询方法、装置、设备、介质及程序产品与流程

本申请涉及计算机,特别涉及一种数据查询方法、装置、设备、介质及程序产品。

背景技术:

1、执行计划是指数据库优化器针对给定查询语句生成的详细操作方案,执行计划包括在数据库中执行给定查询语句时所采用的具体步骤,如表的访问方式、连接顺序以及索引的使用情况等。

2、相关技术中,在数据库运行时,可采用基于代价的优化器分析给定查询语句,基于代价的优化器会利用数据库的统计信息,枚举多个候选执行计划,然后在枚举出来的候选执行计划中选择执行时长最低的候选执行计划作为最终使用的执行计划。

3、然而,当数据库的复杂性增加时,基于代价的优化器需要枚举的候选执行计划数量会显著增加,从而大大的增加对执行计划的分析时长,降低了查询语句的执行效率。

技术实现思路

1、本申请提供了一种数据查询方法、装置、设备、介质及程序产品,本申请提供的技术方案包括如下几个方面。

2、根据本申请实施例的一个方面,提供了一种数据查询方法,所述方法包括:

3、通过计划生成模型生成第一查询语句的第一执行计划,所述第一执行计划包括数据库根据所述第一查询语句执行的第一查询操作;所述计划生成模型是预先训练得到的用于生成执行计划的机器学习模型;

4、在所述第一执行计划符合预设执行要求的情况下,获取所述第一查询操作对应的计划提示信息,所述计划提示信息用于提示所述第一查询操作的操作方式;

5、在所述数据库的运行过程中,基于所述第一查询语句和所述计划提示信息,确定所述第一查询语句的第二执行计划,所述第二执行计划包括所述数据库根据所述第一查询语句执行的至少一个第二查询操作;

6、在所述数据库中执行所述至少一个第二查询操作,得到查询结果。

7、根据本申请实施例的一个方面,提供了一种数据查询装置,所述装置包括:

8、第一处理模块,用于通过计划生成模型生成第一查询语句的第一执行计划,所述第一执行计划包括数据库根据所述第一查询语句执行的第一查询操作;所述计划生成模型是预先训练得到的用于生成执行计划的机器学习模型;

9、所述第一处理模块,用于在所述第一执行计划符合预设执行要求的情况下,获取所述第一查询操作对应的计划提示信息,所述计划提示信息用于提示所述第一查询操作的操作方式;

10、第二处理模块,用于在所述数据库的运行过程中,基于所述第一查询语句和所述计划提示信息,确定所述第一查询语句的第二执行计划,所述第二执行计划包括所述数据库根据所述第一查询语句执行至少一个第二查询操作;

11、所述第二处理模块,用于在所述数据库中执行所述至少一个第二查询操作,得到查询结果。

12、根据本申请实施例的一个方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现上述数据查询方法。

13、根据本申请实施例的一个方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序由处理器加载并执行以实现上述数据查询方法。

14、根据本申请实施例的一个方面,提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序存储在计算机可读存储介质中,处理器从所述计算机可读存储介质读取并执行所述计算机程序,以实现上述数据查询方。

15、本申请实施例提供的技术方案带来的有益效果至少包括:

16、通过预先训练好的计划生成模型生成第一查询语句的第一执行计划,然后获取对应的计划提示信息;在数据库运行时,结合第一查询语句和已有的计划提示信息,快速生成第二执行计划并执行以获取查询结果。相较于相关技术中在数据库运行时使用基于代价的优化器生成执行计划的方案,一方面,本申请中第一执行计划由ai模型(也即计划生成模型)生成,其对应的计划提示信息确保数据库运行时生成的第二执行计划能够参考第一执行计划的优化策略,从而保证了执行计划的质量;另一方面,本申请在数据库运行前就通过计划生成模型生成第一执行计划,并通过计划提示信息表示第一执行计划,在数据库的运行过程中,系统能够直接根据计划提示信息获取ai的分析结果(也即第一执行计划),避免了在数据库运行时的ai推理过程,在保证执行计划生成质量的同时提高了执行计划的生成效率,从而提高了数据查询效率。

1.一种数据查询方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述在所述第一执行计划符合预设执行要求的情况下,获取所述第一执行计划对应的计划提示信息,包括:

3.根据权利要求2所述的方法,其特征在于,所述方法还包括:

4.根据权利要求1所述的方法,其特征在于,所述在所述第一执行计划符合预设执行要求的情况下,获取所述第一执行计划对应的计划提示信息,包括:

5.根据权利要求1至4任一所述的方法,其特征在于,所述在所述第一执行计划符合预设执行要求的情况下,获取所述第一执行计划对应的计划提示信息,包括:

6.根据权利要求1至4任一所述的方法,其特征在于,所述基于所述第一查询语句和所述计划提示信息,确定所述第一查询语句的第二执行计划,包括:

7.根据权利要求6所述的方法,其特征在于,所述将所述计划提示信息插入所述第一查询语句,得到第二查询语句,包括:

8.根据权利要求1至4任一所述的方法,其特征在于,所述方法还包括:

9.根据权利要求8所述的方法,其特征在于,所述在所述第二执行计划符合异常执行条件的情况下,控制所述计划提示信息失效,包括:

10.根据权利要求8所述的方法,其特征在于,所述计划生成模型为对比模型;所述方法还包括:

11.根据权利要求1至4任一所述的方法,其特征在于,所述方法还包括:

12.根据权利要求1至4任一所述的方法,其特征在于,所述方法还包括:

13.根据权利要求12所述的方法,其特征在于,所述在所述执行提示信息符合预设要求的情况下,所述计划生成模型基于所述数据库的当前运行状态更新所述第一执行计划,包括:

14.根据权利要求1至4任一所述的方法,其特征在于,所述至少一个第二查询操作包括所述第一查询操作;其中,所述第一执行计划和所述第二执行计划相同,或者,所述第一执行计划和所述第二执行计划不同。

15.一种数据查询装置,其特征在于,所述装置包括:

16.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现如权利要求1至14任一项所述的数据查询方法。

17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序由处理器加载并执行以实现如权利要求1至14任一项所述的数据查询方法。

18.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序存储在计算机可读存储介质中,处理器从所述计算机可读存储介质读取并执行所述计算机程序,以实现如权利要求1至14任一项所述的数据查询方法。