数据库中的数据查询方法、装置和计算机设备制造方法及图纸

技术编号:38733458 阅读:9 留言:0更新日期:2023-09-08 23:21
本申请涉及一种数据库中的数据查询方法、装置和计算机设备。方法包括:获取数据库查询请求、并提取查询请求中携带的查询命令;通过数据库中的查询优化器生成多个数据库查询计划;根据数据库查询计划,通过预设的多层神经网络模型,得到各个数据库查询计划的执行时间;根据执行时间,从各个数据库查询计划中筛选最优查询计划;执行查询命令,通过最优查询计划对数据库中的数据进行查询。采用本方案能够提高数据查询的效率。够提高数据查询的效率。够提高数据查询的效率。

【技术实现步骤摘要】
数据库中的数据查询方法、装置和计算机设备


[0001]本申请涉及计算机
,特别是涉及一种数据库中的数据查询方法、装置、计算机设备、存储介质和计算机程序产品。

技术介绍

[0002]近年来,随着互联网技术的快速发展,借助SQL(Structured Query Language,结构化查询语言)查询语言实现数据查询应用越来越广泛,处理的数据量逐渐增加,系统也越来越智能化,处理的业务逻辑也更加复杂。
[0003]现有技术中只是对查询SQL进行优化,如编写SQL时避免全表扫描,使用where条件时,相应字段建立索引等;现有SQL查询的方法依赖人工设置的规则规范。这种方法在大数据时代将无法满足成千上万乃至上亿条SQL的人工优化。
[0004]因此,现有的技术中SQL查询方法,无法应对数据查询的多种执行场景,导致数据查询效率较低。

技术实现思路

[0005]基于此,有必要针对上述技术问题,提供一种高效的数据库中的数据查询方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
[0006]第一方面,本申请提供了一种数据库中的数据查询方法。所述方法包括:
[0007]获取数据库查询请求、并提取查询请求中携带的查询命令;
[0008]通过数据库中的查询优化器生成多个数据库查询计划;
[0009]根据所述数据库查询计划,通过预设的多层神经网络模型,得到各个数据库查询计划的执行时间,其中,所述多层神经网络模型采用样本数据训练得到,所述样本数据包括历史不同数据库查询计划、以及对应的执行时间;
[0010]根据所述执行时间,从所述各个数据库查询计划中筛选最优查询计划;
[0011]执行所述查询命令,通过所述最优查询计划对数据库中的数据进行查询。
[0012]在其中一个实施例中,数据库中的数据查询方法还包括:
[0013]获取历史数据库查询计划、以及对应的执行时间;
[0014]根据所述历史数据库查询计划、以及对应的执行时间,得到对应的多组特征向量集;
[0015]通过所述多组特征向量集,对初始多层神经网络模型进行训练,学习数据库查询计划与对应的执行时间之间的关系,得到预设的多层神经网络模型。
[0016]在其中一个实施例中,所述根据所述历史数据库查询计划、以及对应的执行时间,得到对应的多组特征向量集包括:
[0017]将所述历史数据库查询计划、以及对应的执行时间转换为多组节点序列集;
[0018]对所述历史数据库查询计划进行遍历,按遍历顺序将多组节点序列集编码为多组特征向量集。
[0019]在其中一个实施例中,数据库中的数据查询方法还包括:
[0020]获取原始历史数据库查询计划数据、并对所述原始历史数据库查询计划数据进行清洗及变换;
[0021]通过清洗及变换的数据,进行稳定性测试;
[0022]若稳定性测试通过,则得到历史数据库查询计划数据。
[0023]在其中一个实施例中,所述通过数据库中的查询优化器生成多个数据库查询计划包括:
[0024]将所述查询命令中的查询语句解析为查询树语句;
[0025]将所述查询树语句输入到数据库中的查询优化器中,生成多个数据库查询计划。
[0026]在其中一个实施例中,所述数据库查询计划包括数据访问路径、数据库表的连接顺序、以及数据库表的连接类型中的至少两种。
[0027]第二方面,本申请还提供了一种数据库中的数据查询装置。所述装置包括:
[0028]请求获取模块,用于获取数据库查询请求、并提取查询请求中携带的查询命令;
[0029]查询计划生成模块,用于通过数据库中的查询优化器生成多个数据库查询计划;
[0030]执行时间获取模块,用于根据所述数据库查询计划,通过预设的多层神经网络模型,得到各个数据库查询计划的执行时间,其中,所述多层神经网络模型采用样本数据训练得到,所述样本数据包括历史不同数据库查询计划、以及对应的执行时间。
[0031]查询计划筛选模块,用于根据所述执行时间,从所述各个数据库查询计划中筛选最优查询计划;
[0032]数据查询模块,用于执行所述查询命令,通过所述最优查询计划对数据库中的数据进行查询。
[0033]第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0034]获取数据库查询请求、并提取查询请求中携带的查询命令;
[0035]通过数据库中的查询优化器生成多个数据库查询计划;
[0036]根据所述数据库查询计划,通过预设的多层神经网络模型,得到各个数据库查询计划的执行时间,其中,所述多层神经网络模型采用样本数据训练得到,所述样本数据包括历史不同数据库查询计划、以及对应的执行时间;
[0037]根据所述执行时间,从所述各个数据库查询计划中筛选最优查询计划;
[0038]执行所述查询命令,通过所述最优查询计划对数据库中的数据进行查询。
[0039]第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
[0040]获取数据库查询请求、并提取查询请求中携带的查询命令;
[0041]通过数据库中的查询优化器生成多个数据库查询计划;
[0042]根据所述数据库查询计划,通过预设的多层神经网络模型,得到各个数据库查询计划的执行时间,其中,所述多层神经网络模型采用样本数据训练得到,所述样本数据包括历史不同数据库查询计划、以及对应的执行时间;
[0043]根据所述执行时间,从所述各个数据库查询计划中筛选最优查询计划;
[0044]执行所述查询命令,通过所述最优查询计划对数据库中的数据进行查询。
[0045]第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
[0046]获取数据库查询请求、并提取查询请求中携带的查询命令;
[0047]通过数据库中的查询优化器生成多个数据库查询计划;
[0048]根据所述数据库查询计划,通过预设的多层神经网络模型,得到各个数据库查询计划的执行时间,其中,所述多层神经网络模型采用样本数据训练得到,所述样本数据包括历史不同数据库查询计划、以及对应的执行时间;
[0049]根据所述执行时间,从所述各个数据库查询计划中筛选最优查询计划;
[0050]执行所述查询命令,通过所述最优查询计划对数据库中的数据进行查询。
[0051]上述数据库中的数据查询方法、装置、计算机设备、存储介质和计算机程序产品,获取数据库查询请求、并提取查询请求中携带的查询命令;通过数据库中的查询优化器生成多个数据库查询计划;根据数据库查询计划,通过预设的多层神经网络模型,得到各本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据库中的数据查询方法,其特征在于,所述方法包括:获取数据库查询请求、并提取查询请求中携带的查询命令;通过数据库中的查询优化器生成多个数据库查询计划;根据所述数据库查询计划,通过预设的多层神经网络模型,得到各个数据库查询计划的执行时间,其中,所述多层神经网络模型采用样本数据训练得到,所述样本数据包括历史不同数据库查询计划、以及对应的执行时间;根据所述执行时间,从所述各个数据库查询计划中筛选最优查询计划;执行所述查询命令,通过所述最优查询计划对数据库中的数据进行查询。2.根据权利要求1所述的方法,其特征在于,还包括:获取历史数据库查询计划、以及对应的执行时间;根据所述历史数据库查询计划、以及对应的执行时间,得到对应的多组特征向量集;通过所述多组特征向量集,对初始多层神经网络模型进行训练,学习数据库查询计划与对应的执行时间之间的关系,得到预设的多层神经网络模型。3.根据权利要求2所述的方法,其特征在于,所述根据所述历史数据库查询计划、以及对应的执行时间,得到对应的多组特征向量集包括:将所述历史数据库查询计划、以及对应的执行时间转换为多组节点序列集;对所述历史数据库查询计划进行遍历,按遍历顺序将多组节点序列集编码为多组特征向量集。4.根据权利要求1所述的方法,其特征在于,还包括:获取原始历史数据库查询计划数据、并对所述原始历史数据库查询计划数据进行清洗及变换;通过清洗及变换的数据,进行稳定性测试;若稳定性测试通过,则得到历史数据库查询计划数据。5.根据权利要求1所述的方法,其特征在于,所述通过...

【专利技术属性】
技术研发人员:赵峻林楠高仓健林凤耀
申请(专利权)人:兴业数字金融服务上海股份有限公司
类型:发明
国别省市:

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

1