[发明专利]SQL语句的统计方法、装置、计算机设备及存储介质在审
申请号: | 202210171438.0 | 申请日: | 2022-02-24 |
公开(公告)号: | CN114547079A | 公开(公告)日: | 2022-05-27 |
发明(设计)人: | 刘建华 | 申请(专利权)人: | 平安普惠企业管理有限公司 |
主分类号: | G06F16/242 | 分类号: | G06F16/242;G06F16/2458 |
代理公司: | 深圳市世联合知识产权代理有限公司 44385 | 代理人: | 杨晖琼 |
地址: | 518000 广东省深圳市前海深港合作区前*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | sql 语句 统计 方法 装置 计算机 设备 存储 介质 | ||
本申请涉及计算机技术领域,揭露了一种SQL语句的统计方法、装置、计算机设备及存储介质,所述方法包括:获取数据库的SQL语句;利用抽象语法树算法,将所述SQL语句构建得到对应的语法树;基于所述语法树中的结构化对象进行组装,得到标准化SQL语句;根据标识算法对所述标准化SQL语句进行打标,得到对应的标识符;基于所述标识符,对所述标准化SQL语句进行频次统计。本申请还涉及区块链技术,所述频次统计结果存储于区块链中。本申请实现了快速且准确的对所述SQL语句进行频次统计。
技术领域
本申请涉及计算机技术领域,尤其涉及一种SQL语句的统计方法、装置、计算机设备及存储介质。
背景技术
随着信息技术的发展,数据库已经成为信息系统的必要组件了,我们通常说的数据库主流的还是关系型数据库,如Oracle、Mysql等,使用关系型数据库,就必须使用sql来进行数据查询,但随着系统规模的增加,数据库的数据量也在指数型增长,于是,就需要对使用sql的方式做一些优化保证数据库正常运行,如sql优化、增加索引、分库、分表等,但除了一些致命性的sql之外,我们更多会遇到那种对数据库有一定消耗,但它的风险性又不确定,事实上很大程度取决于它的执行频率。现有技术中,分析sql的频率问题得借助于DBA(数据库管理员)从数据库中查询出来,然后进行统计,得出sql执行频率情况,但会存在多个SQL仅参数不同时,会被当成多个SQL来进行统计;因此,如何对SQL语句进行更准确的统计成为了亟待解决的问题。
发明内容
本申请提供了一种SQL语句的统计方法、装置、计算机设备及存储介质,以解决现有技术中,如何准确的对SQL语句进行统计的问题。
为解决上述问题,本申请提供了一种SQL语句的统计方法,包括:
获取数据库的SQL语句;
利用抽象语法树算法,将所述SQL语句构建得到对应的语法树;
基于所述语法树中的结构化对象进行组装,得到标准化SQL语句;
根据标识算法对所述标准化SQL语句进行打标,得到对应的标识符;
基于所述标识符,对所述标准化SQL语句进行频次统计。
进一步的,在获取数据库的SQL语句之前,还包括:
设置预设时间的定时器;
所述获取数据库的SQL语句包括:
当所述定时器到达所述预设时间时,获取操作数据库的SQL语句。
进一步的,所述获取数据库的SQL语句包括:
获取所述定时器在所述预设时间内,输入所述数据库的SQL语句。
进一步的,所述利用抽象语法树算法,将所述SQL语句构建得到对应的语法树包括:
根据所述抽象语法树算法,对所述SQL语句进行词法分析,得到对应的数组;
通过所述抽象语法树算法,对所述数组进行语法分析,将所述数组转换为树形,从而得到所述语法树。
进一步的,所述基于所述语法树中的结构化对象进行组装,得到标准化SQL语句包括:
通过利用排序算法对所述结构化对象进行组装,得到中间语句;
通过对所述中间语句进行参数替换,得到所述标准化SQL语句。
进一步的,所述根据标识算法对所述标准化SQL语句进行打标,得到对应的标识符包括:
根据MD5算法对所述标准化SQL语句,得到对应的标识符。
为了解决上述问题,本申请还提供一种SQL语句的统计装置,所述装置包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平安普惠企业管理有限公司,未经平安普惠企业管理有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210171438.0/2.html,转载请声明来源钻瓜专利网。