查询语句缓存的命中方法及相关设备技术

技术编号:38530588 阅读:22 留言:0更新日期:2023-08-19 17:04
本发明专利技术提供了一种查询语句缓存的自动命中和手动命中方法及相关设备。涉及数据库技术领域。本发明专利技术包括:获取查询语句,以及获取设定时间段的历史查询语句;判断历史查询语句是否满足第一预设条件;若是,则通过字符串对比判断查询语句是否命中缓存。本发明专利技术通过字符串对比判断查询语句是否命中缓存,这种采用字符串作为比较条件判断查询语句是否命中缓存的方法相较于现有的生成查询树来判断是否命中缓存的方法,更加节省了CPU的算力,同时缩短了数据库的查询所需要的时间,使得查询效率更高。使得查询效率更高。使得查询效率更高。

【技术实现步骤摘要】
查询语句缓存的命中方法及相关设备


[0001]本专利技术涉及数据库
,特别是涉及一种查询语句缓存的命中方法及相关设备。

技术介绍

[0002]随着数据库技术的发展,用户对数据的查询执行的性能要求越来越高,在数据库执行查询语句时,执行过程分为三个阶段,第一阶段是执行初始化(包括各算子初始化执行时的数据结构的空间分配和赋值等),第二阶段是真正执行各算子的算法,第三阶段是执行时的资源释放(也就是各算子在初始化分配的资源进行释放)。在第一阶段时,数据库主要分析并计算查询语句的执行计划,并在执行初始化完成后得到查询语句的执行状态。在数据库执行大量重复的查询语句时,数据库反复对相同的查询语句进行执行计划的计算并基于执行计划执行初始化,这会浪费CPU大量的算力,且查询效率不高。现有的解决方法是将查询语句的执行计划和执行状态存入缓存,在下次执行相同的查询语句时,且在查询语句命中缓存时,直接执行缓存中的查询语句的执行计划,而不再重新对查询语句进行计算并执行初始化。现有的判断查询语句是否命中缓存的方法通常为生成该查询语句的查询树,以查询树作为比较条件来判断是本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种查询语句缓存的命中方法,其特征在于,包括:获取查询语句,以及获取设定时间段的历史查询语句;判断所述历史查询语句是否满足第一预设条件;若是,则通过字符串全部对比判断所述查询语句是否命中缓存。2.根据权利要求1所述的命中方法,其特征在于,所述的获取设定时间段的历史查询语句,包括:根据预设规则对各所述历史查询语句进行分组,以得到多个查询语句组;将语句数量最多的设定个所述查询语句组作为特征查询语句组;所述的判断所述历史查询语句是否满足第一预设条件,包括:判断所述特征查询语句组中相同的所述历史查询语句的占比是否大于第一预设占比;若是,则认定所述历史查询语句满足所述第一预设条件。3.根据权利要求2所述的命中方法,其特征在于,若所述历史查询语句不满足所述第一预设条件,则判断所述历史查询语句是否满足第二预设条件,其中所述第二预设条件包括:所述特征查询语句组中仅有常量不同的所述历史查询语句的占比不小于第二预设占比;若是,则获取所述查询语句中除常量外的剩余字符串,并通过所述剩余字符串的对比判断所述查询语句是否命中缓存。4.根据权利要求3所述的命中方法,其特征在于,若所述历史查询语句不满足第二预设条件,则根据所述查询语句生成对应的查询树,通过所述查询语句所对应的查询树对比判断所述查询语句是否命中缓存。5.根据权利要求2所述的命中方法,其特征在于,所述的根据预设规则对各所述历史查询语句进行分组,包括:获取各所...

【专利技术属性】
技术研发人员:王鸿翔冷建全
申请(专利权)人:北京人大金仓信息技术股份有限公司
类型:发明
国别省市:

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

1