[发明专利]一种结构化查询语言SQL性能统计的方法及装置有效
申请号: | 201711403391.1 | 申请日: | 2017-12-22 |
公开(公告)号: | CN108182215B | 公开(公告)日: | 2021-10-12 |
发明(设计)人: | 邱帅兵;任文越;王崇 | 申请(专利权)人: | 微梦创科网络科技(中国)有限公司 |
主分类号: | G06F16/242 | 分类号: | G06F16/242;G06F16/22;G06F16/25;G06F40/289;G06F11/34 |
代理公司: | 北京卓岚智财知识产权代理事务所(特殊普通合伙) 11624 | 代理人: | 任漱晨 |
地址: | 100193 北京市海淀区东北旺西路中关村*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 结构 查询 语言 sql 性能 统计 方法 装置 | ||
本发明实施例提供了一种结构化查询语言SQL性能统计的方法及装置,该方法包括:获取SQL类型的日志信息,所述日志信息包括SQL语句和所述SQL语句的执行性能信息;针对每一条日志信息,解析所述SQL语句,根据预定分割字符,对所述SQL语句进行分割,得到分割后的SQL语句;将分割后的SQL语句作为性能统计列表的第一索引信息,依据所述第一索引信息,将当前日志信息中的SQL语句的执行性能信息存储至所述性能统计列表;根据所述性能统计列表中存储的当前日志信息中的SQL语句的执行性能信息,统计当前日志信息中的SQL语句的性能数据。通过本发明,实现了快速、高效地对SQL语句进行性能统计,精确地查找出发生现异常问题的SQL语句。
技术领域
本发明涉及计算机技术领域,尤其涉及一种结构化查询语言SQL性能统计的方法及装置。
背景技术
目前,业务系统中通常会划分多个模块,每个模块中都会有数据的存取操作,通常该方式下的数据的存取操作是通过调用外部接口或者数据库操作语句来实现的。由于在调用外部接口或者进行数据库操作的过程中会有一些不确定性,导致不能确定外部接口或者数据库操作对业务系统性能的影响,因此,需要对外部接口或者数据库操作进行监控,如监控对外部接口或者数据库操作的运行时间等,当监控发现时间异常时,能够及时通知开发和运维的人员进行维护解决问题,以提高业务系统的性能。
现有技术中,对业务系统的监控通常是通过日志信息来实现的,然而由于日志是不间断的产生,并且外部接口或者数据库操作的日志是海量的,一个接口或者一条数据库操作会由于参数的变化而不断的被调用或者执行。因此,如果想要对外部接口和数据库操作进行监控,就必须解决由于参数的改变,使得外部接口和数据库操作语句会有多种形式出现的问题。
外部接口的调用所产生的日志信息相对来说是比较容易处理的,因为HTTP(HyperText Transfer Protocol,超文本传输协议)接口URL(Uniform Resource Locator,统一资源定位符)的参数和主干部分是通过问号分开的,所以要想监控统计HTTP接口的日志信息,只需要将问号之后的参数过滤掉,将过滤后的URL作为索引,统计相对应的监控信息即可。然而,数据库操作语句的日志信息处理就没有这么简单了,因为SQL数据库的操作语句参数是不定向的,SQL语句的操作符有很多种,如何将SQL语句进行归并是相当复杂的一个问题。对SQL性能监控最主要的是对SQL日志信息进行统计,对SQL性能统计最主要的是对SQL语句进行参数去重归并。现有技术中对SQL语句进行归并的方法主要有两种,一种是Antlr4(ANother Tool for Language Recognition)语法分析器对SQL语句的语法解析出参数,参数统一化后归并;另外一种是利用算法解析SQL语句的相似度,对高相似度的SQL语句进行归并。例如:SQL语句1:select*from table where a=1 and b=2;和SQL语句2:select*from table where a=3 and b=4;根据Antlr4语法分析器的方法,首先分析SQL语句1和2的语法,然后解析出参数‘1’、‘2’、‘3’和‘4’,随后将各参数统一替换成‘*’,替换后的SQL语句为:select*from table where a=*and b=*;随后,对该条SQL语句的性能统计就比较方便了,只需将参数化后的SQL语句作为索引即可;通过算法对SQL语句求相似度的方法为:将SQL语句作为字符串,算法计算出字符串的一个value值,例如算法计算SQL语句1的value值是107987321023,计算SQL语句2的value值是107987321123,那么求其相似度102587955066/107987321123,可以得出相似度为95%,那么说明这两条SQL语句相似,随后对其归并统计。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微梦创科网络科技(中国)有限公司,未经微梦创科网络科技(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711403391.1/2.html,转载请声明来源钻瓜专利网。