【技术实现步骤摘要】
本专利技术涉及关系数据库的查询缓存优化
,具体涉及一种通过机器学习提高应用系统在关系数据库的空间与时间效率的方法。
技术介绍
数据查询缓存在各种关系数据库上普遍都有实现,实现过程基本是,查询数据时,通过解析查询语句,判断要查询的数据库是否存在于缓存中,如果存在则直接从缓存中读取数据并返回;如果数据不存在于缓存中,则从数据文件中读取数据,并保存到缓存中用于下次的数据查询。在这个实现的过程中,由于没有判断数据的读取频率、读取的字段、条件等,在每次读取数据时,都要进行数据的缓存,所以关系数据库每次都要维护一次缓存的操作,如果缓存空间不足,还每次要进行LFU的替换算法,这导致在每次查询时,数据缓存的空间与时间效率较低,需要进行改进。
技术实现思路
本专利技术通过预先机器学习,从而得出缓存阀值计算公式用于数据查询时的阀值计算,判断是否要对数据进行缓存,从而优化了传统数据库在查询是每次都要进行缓存的问题,减少了数据缓存的空间与每次缓存时的中断替换时间,提高了数据查询的效率。本专利技术解决上述技术问题的技术方案是:通过分析特定应用系统的查询语句,把查询语句分解为解析树,通过解析树把查询语句按查询字段、查询表、查询条件,相应应用MLFU、LFU、FP-groupth算法,按查询字段、查询表、查询条件作为输入,通过回归算法计算得出查询语句的缓存阀值计算公式;在应用系统进行查询时,通过阀值计算公式, ...
【技术保护点】
一种通过机器学习提高应用系统在关系数据库的空间与时间效率的方法,其特征在于:通过分析特定应用系统的查询语句,把查询语句分解为解析树,通过解析树把查询语句按查询字段、查询表、查询条件,相应应用MLFU、LFU、FP‑groupth算法,按查询字段、查询表、查询条件作为输入,通过回归算法计算得出查询语句的缓存阀值计算公式;在应用系统进行查询时,通过阀值计算公式,判断查询的数据是否可能在缓存空间中、或是否需要缓存到空间上。
【技术特征摘要】
1.一种通过机器学习提高应用系统在关系数据库的空间与时间效率的方
法,其特征在于:通过分析特定应用系统的查询语句,把查询语句分解为解析
树,通过解析树把查询语句按查询字段、查询表、查询条件,相应应用MLFU、
LFU、FP-groupth算法,按查询字段、查询表、查询条件作为输入,通过回归算
法计算得出查询语句的缓存阀值计算公式;在应用系统进行查询时,通过阀值
计算公式,判断查询的数据是否可能在缓存空间中、或是否需要缓存到空间上。
2.根据权利要求1所述的提高应用系统在关系数据库的空间与时间效率的
方法,其特征在于:对应用系统特定的查询语句的分析、通过机器学习用回归
算法得出缓存阀值计算公式后实现数据查询的优化,分为查询语句机器学习与
查询缓存策略两部分。
3.根据权利要求1所述的提高应用系统在关系数据库的空间与时间效率的
方法,其特征在于:在查询语句机器学习时,需把应用系统的所有查询语句获
取到,并对所有的查询语句按查询字段、查询表、查询条件分解为解析树。
4.根据权利要求2所述的提高应用系统在关系数据库的空间与时间效率的
方法,其特征在于:在查询语句机器学习时,需把应用系统的所有查询语句获
取到,并对所有的查询语句按查询字段、查询表、查询条件分解为解析树。
5.根据权利要求1至4任一项所述的提高应用系统在关系数据库的空间与
时间效率的方法,其特征在于:在所有查询语句分解为解析树后,查询字段、
查询表、查询条件分别应用MLFU、LFU、FP-Groupth算法,分别计算出各种
查询字段、查询表、查询条件在所有查询语句中的比率,并按从高到低的顺序
排序;
分析查询字段、查询表、查询条件的数量,对于大于一定比率的查询语句,
表示是经常要使用到的,在进行打分时,设置为1,低于一定比率的查询语句,
\t表示不经常使用到,在打分时设置为0,这样三种情况,得出了从0到7的8种
分数;
通过查询字段、查询表、查询条件的占所有查询结果的比率,与最终的0
到7的打分,形成最终的回归分析基础数据,从而得出按查询字段、查询表、
查询条件作为输入的查询语句是否需要缓存的阀值计算公式,用于数据查询时
的缓存参考。
6.根据权利要求1至4任一项所述的提高应用系统在关系数据库的空间与
时间效率的方法,...
【专利技术属性】
技术研发人员:郑锐韬,郭树盛,季统凯,
申请(专利权)人:国云科技股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。