[发明专利]一种SQL执行效率静态分析方法在审

专利信息
申请号: 201811447657.7 申请日: 2018-11-29
公开(公告)号: CN109669952A 公开(公告)日: 2019-04-23
发明(设计)人: 宓建栋 申请(专利权)人: 杭州仟金顶信息科技有限公司
主分类号: G06F16/242 分类号: G06F16/242;G06F8/41
代理公司: 杭州杭诚专利事务所有限公司 33109 代理人: 尉伟敏
地址: 310051 浙江*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 静态分析 规则库 抽象语法树 自定义 语句 标注 待测文件 检测分析 匹配处理 匹配引擎 使用规则 文件输入 详细信息 语法规则 准确率 运维 扫描 分析 工程师 输出 审核 替代 帮助 开发
【说明书】:

发明公开了一种SQL执行效率静态分析方法,包括以下步骤:步骤S01:将SQL语法文件输入到JavaCC及JJTree中,生成SQL解析器;步骤S02:将待测文件输入到SQL解析器中处理,生成SQL抽象语法树;步骤S03:建立SQL语法规则库,所述规则库内包含若干种自定义语法规则;步骤S04:使用规则匹配引擎通过SQL语法规则库对SQL抽象语法树进行匹配处理,标注出有问题的语句;步骤S05:输出标注的语句及其详细信息。本发明可以根据自定义的检测分析规则,对工程中的SQL语句进行扫描和静态分析,帮助甚至替代工程师进行SQL语句的审核,提高开发和运维的效率,减少分析所用时间,提高分析的准确率。

技术领域

本发明涉及一种代码分析方法,特别涉及一种SQL执行效率静态分析方法。

背景技术

在业务系统的开发中经常会用到大量用于数据库操作的SQL语句。这些SQL语句的执行效率会在很大程度上影响到系统的性能和稳定性。为了保证软件产品中的SQL语句达到期待的设计目标,软件开发和运维团队会采取很多种方法,这些方法大致可以分为2类:一种是动态监控方法,软件产品上线之后,通过监控软件实际运行时生成的SQL语句的执行时间,CPU使用率,IO效率等,当测定值超过预设的某个阈值就产生报警;另一种是静态分析方法,在软件开发过程中,通过有经验的软件工程师对SQL的代码审核,发现SQL中潜在的性能问题或者正确性问题,并及时修正。

上述传统方案中,动态监控方法不能做到事先防范,静态分析人力成本较高,需要投入大量的代码审查时间且依赖于工程师的经验和技术水平。

公开号 CN107480296A的发明申请提出一种基于SQL的数据库性能分析方法和装置,其中,方法包括:从数据库的日志中,提取SQL指令,对提取到的SQL指令进行分析,得到数据库根据SQL指令进行查询的运行信息,根据运行信息进行统计,分别得到多个性能参数。

该对比文件中的分析方法本质上即为统计分析,使用效率及准确度不高。

发明内容

针对现有技术分析的效率及精确性不高的问题,本发明公开了一种SQL执行效率静态分析方法,通过设定的规则对SQL抽象语法树进行匹配,加快了分析速度,减少了分析时间,提高了分析准确度。

以下是本发明的技术方案。

一种SQL执行效率静态分析方法,包括以下步骤:

步骤S01:将SQL语法文件输入到JavaCC及JJTree中,生成SQL解析器;

步骤S02:将待测文件输入到SQL解析器中处理,生成SQL抽象语法树;

步骤S03:建立SQL语法规则库,所述规则库内包含若干种自定义语法规则;

步骤S04:使用规则匹配引擎通过SQL语法规则库对SQL抽象语法树进行匹配处理,标注出有问题的语句;

步骤S05:输出标注的语句及其详细信息。

本发明可以根据自定义的检测分析规则,对工程中的SQL语句进行扫描和静态分析,帮助甚至替代工程师进行SQL语句的审核,提高开发和运维的效率。

进一步的,所述步骤S02中,处理过程包括筛选出待测文件中的SQL语句并将SQL语句按对象归类,对归类完成后的SQL语句进行抽象化处理,所述对象名用大写字母开头的英文单词表示,所述对象包括Select及Where。

进一步的,所述抽象化处理包括使用DSL抽象SQL语法的组成部分,用多层子对象的形式将组成部分进一步拆分。

进一步的,所述步骤S03中,规则库的自定义语法规则通过DSL语言编写,包括若干种语法正确但执行效率低的语句形式。

进一步的,所述步骤S04中,规则匹配引擎由搜索引擎及规则库生成。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州仟金顶信息科技有限公司,未经杭州仟金顶信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201811447657.7/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top