数据库的查询优化方法、存储介质及设备技术

技术编号:37974964 阅读:18 留言:0更新日期:2023-06-30 09:50
本发明专利技术提供了一种数据库的查询优化方法、存储介质及设备。数据库的查询优化方法包括:读取需要生成统计信息的基础数据;获取并记录基础数据中的最频值,最频值为基础数据中数量最多的数据值;利用基础数据中除最频值之外的数据值生成等高直方图,等高直方图包括预设数量的桶,基础数据中除最频值之外的数据值按排序数量平均地放入预设数量的桶中;判断是否存在跨桶的数据值,若是,将跨桶的数据值移至同一个桶中;根据最频值和每个桶内的数据值生成统计信息。保证了直方图的边界值均不会跨桶,从而,对于针对直方图的边界值的查询条件来说,有助于提高代价估算的准确性。有助于提高代价估算的准确性。有助于提高代价估算的准确性。

【技术实现步骤摘要】
数据库的查询优化方法、存储介质及设备


[0001]本专利技术涉及数据库
,特别是涉及一种数据库的查询优化方法、存储介质及设备。

技术介绍

[0002]结构化查询语言(Structured Query Language,简称SQL)是关系数据库的标准语言,是一种通用性极强的关系数据库语言。在数据库系统中,一个SQL语句的执行一般需要依次经过解析器、优化器和执行器阶段才能返回结果。其中,在优化器阶段,数据库系统会根据查询语句的执行代价来选择较为优选的执行计划。
[0003]其中,数据库的统计信息是代价估算的重要依据。直方图是数据库统计信息的其中一种,直方图能够反映表中数据的数据分布情况,用于估算查询条件的选择率。但是,现有的直方图存在一定缺陷,估算的准确性有待进一步提高。

技术实现思路

[0004]本专利技术的一个目的是要提供一种能够解决上述任一问题的数据库的查询优化方法、存储介质及设备。
[0005]特别地,本专利技术提供了一种数据库的查询优化方法,包括:
[0006]读取需要生成统计信息的基础数据;本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数据库的查询优化方法,包括:读取需要生成统计信息的基础数据;获取并记录所述基础数据中的最频值,所述最频值为所述基础数据中数量最多的数据值;利用所述基础数据中除所述最频值之外的数据值生成等高直方图,所述等高直方图包括预设数量的桶,所述基础数据中除所述最频值之外的数据值按排序数量平均地放入所述预设数量的桶中;判断是否存在跨桶的数据值,若是,将所述跨桶的数据值移至同一个桶中;根据所述最频值和每个所述桶内的数据值生成统计信息。2.根据权利要求1所述的数据库的查询优化方法,其中,所述根据所述最频值和每个所述桶内的数据值生成统计信息的步骤包括:计算并记录所述最频值的频率值,所述最频值的频率值为所述最频值的数量与所述基础数据的数值总量的比值;计算并记录每个所述桶的桶边界值个数以及所述桶边界值的频率值,所述桶边界值为所述桶中的起始数据值,所述桶边界值的频率值为所述桶边界值的数量与所述基础数据的数值总量的比值。3.根据权利要求2所述的数据库的查询优化方法,其中,所述根据所述最频值和每个所述桶内的数据值生成统计信息的步骤之后包括:获取查询语句并读取所述查询语句中的查询条件;判断所述查询条件是否是所述最频值,若所述查询条件是所述最频值,从所述统计信息中获取所述最频值的频率值作为选择率。4.根据权利要求3所述的数据库的查询优化方法,其中,所述判断所述查询条件是否是所述最频值的步骤之后包括:若所述查询条件不是所述最频值,判断所述查询条件是否是所述桶边界值,若是,从所述统计信息中获取所述桶边界值的频率值作为选择率,若否,按照预设的计算方式计算所述查...

【专利技术属性】
技术研发人员:张敬涛范国腾
申请(专利权)人:北京人大金仓信息技术股份有限公司
类型:发明
国别省市:

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

1