异常语句识别方法、装置、设备、存储介质制造方法及图纸

技术编号:38477424 阅读:12 留言:0更新日期:2023-08-15 16:56
本申请涉及数据库技术领域,尤其是一种异常语句识别方法、装置、设备、存储介质。所述方法包括:获取待处理程序包;对所述待处理程序包中的结构化查询语句进行分类得到目标分类;调用目标工具对所述目标分类中的结构化查询语句进行执行计划分析得到分析结果;根据所述分析结果确定异常语句。采用本方法能够自动化对分类中的结构化查询语句进行执行计划分析得到分析结果,不需要人工分析,提高了处理效率。率。率。

【技术实现步骤摘要】
异常语句识别方法、装置、设备、存储介质


[0001]本申请涉及数据库
,特别是涉及一种异常语句识别方法、装置、设备、存储介质。

技术介绍

[0002]随着计算机技术的发展,出现了数据库技术,数据库技术是信息系统的一个核心技术,通过研究数据库的结构、存储、设计、管理以及应用的基本理论和实现方法,并利用这些理论来实现对数据库中的数据进行处理、分析和理解。
[0003]Oracle数据库(Oracle RDBMS,或简称Oracle,是甲骨文公司的一款关系数据库管理系统)承载的业务越来越多,业务逻辑也变得愈来愈复杂。在数据库的业务逻辑链条出现性能瓶颈时,开发人员和数据库管理员定位问题会变得非常困难,传统技术中,在出现性能问题的时候,一般需要从Oracle Package(oracle package是oracle包,是一组相关过程、函数、变量、常量、类型和游标等程序设计元素的组合。)的调用入口着手,分析调用过程中的全部SQL(Structured Query Language,结构化查询语句)代码。针对每一段SQL人工分析执行计划,查找是否存在全表扫描这种异常执行计划,如果存在则进行人工优化。这个过程中涉及到的SQL代码量和实际调用链的长短线性关联。正常情况下,一次性能问题的排查需要约2个人日才能完成,效率十分低下。

技术实现思路

[0004]基于此,有必要针对上述技术问题,提供一种能够提高处理效率的异常语句识别方法、装置、设备、存储介质。
[0005]第一方面,本申请提供一种异常语句识别方法,所述方法包括:
[0006]获取待处理程序包;
[0007]对所述待处理程序包中的结构化查询语句进行分类得到目标分类;
[0008]调用目标工具对所述目标分类中的结构化查询语句进行执行计划分析得到分析结果;
[0009]根据所述分析结果确定异常语句。
[0010]在其中一个实施例中,所述对所述待处理程序包中的结构化查询语句进行分类得到目标分类,包括:
[0011]获取当前待处理程序包;
[0012]识别所述当前待处理程序包中的目标对象,以对所述当前待处理程序包进行第一次分类得到待处理分类;
[0013]对所述待处理分类中的结构化查询语句进行第二次分类以得到目标分类。
[0014]在其中一个实施例中,在所述获取当前待处理程序包之后,还包括:
[0015]当所述当前待处理程序包调用了其他程序包,则将所述其他程序包作为当前待处理程序包,并继续执行识别所述当前待处理程序包中的目标对象,以对所述当前待处理程
序包进行第一次分类得到待处理分类的步骤;
[0016]在所述对所述待处理分类中的结构化查询语句进行第二次分类以得到目标分类之后,还包括:
[0017]生成所述目标分类对应的调用关系。
[0018]在其中一个实施例中,所述对所述待处理程序包中的结构化查询语句进行分类得到目标分类,包括:
[0019]通过Python语言对所述待处理程序包中的结构化查询语句进行分类得到目标分类。
[0020]在其中一个实施例中,所述调用目标工具对所述目标分类中的结构化查询语句进行执行计划分析得到分析结果,包括:
[0021]通过shell工具调用SQLPlus工具对所述目标分类中的结构化查询语句进行执行计划分析得到分析结果。
[0022]在其中一个实施例中,所述根据所述分析结果确定异常语句,包括:
[0023]检测所述分析结果中是否存在目标字符串;
[0024]当所述分析结果中存在目标字符串时,确定存在所述目标字符串的分析结果对应的结构化查询语句为异常语句。
[0025]在其中一个实施例中,所述检测所述分析结果中是否存在目标字符串,包括:
[0026]检测所述分析结果中是否存在全表扫描字段。
[0027]第二方面,本申请还提供一种异常语句识别装置,所述装置包括:
[0028]待处理程序包获取模块,用于获取待处理程序包;
[0029]分类模块,用于对所述待处理程序包中的结构化查询语句进行分类得到目标分类;
[0030]执行计划分析模块,用于调用目标工具对所述目标分类中的结构化查询语句进行执行计划分析得到分析结果;
[0031]确定模块,用于根据所述分析结果确定异常语句。
[0032]第三方面,本申请还提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任意一个实施例中的方法的步骤。
[0033]第四方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一个实施例中的方法的步骤。
[0034]上述异常语句识别方法、装置、设备、存储介质,对待处理程序包中的结构化查询语句进行分类得到目标分类,再调用目标工具对所述目标分类中的结构化查询语句进行执行计划分析得到分析结果,根据分析结果来确定异常语句,自动化对分类中的结构化查询语句进行执行计划分析得到分析结果,不需要人工分析,提高了处理效率。
附图说明
[0035]图1为一个实施例中异常语句识别方法的应用环境图;
[0036]图2为一个实施例中异常语句识别方法的流程示意图;
[0037]图3为另一个实施例中异常语句识别方法的流程示意图;
[0038]图4为一个实施例中异常语句识别装置的结构框图;
[0039]图5为一个实施例中计算机设备的内部结构图。
具体实施方式
[0040]为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0041]本申请实施例提供的异常语句识别方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与数据库104进行通信。其中终端102从数据库104获取待处理程序包;对待处理程序包中的结构化查询语句进行分类得到目标分类;调用目标工具对目标分类中的结构化查询语句进行执行计划分析得到分析结果;根据分析结果确定异常语句。自动化对分类中的结构化查询语句进行执行计划分析得到分析结果,不需要人工分析,提高了处理效率。
[0042]其中,终端102可以但不限于是各种便携式PC、平板或者传统意义上的电脑,如笔记本和台式机等。数据库104可以用独立的数据库或者是多个数据库组成的数据库集群来实现。
[0043]在一个实施例中,如图2所示,提供了一种异常语句识别方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
[0044]S202:获取待处理程序包。
[0045]具体地,待处理程序包可以是指数据库中的业务逻辑组织结构,例如Oracle数据库中的业务逻辑组织结构Oracle Package,该待处理程序包可以看做是业务操作逻辑单元的超集,例如本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种异常语句识别方法,其特征在于,所述方法包括:获取待处理程序包;对所述待处理程序包中的结构化查询语句进行分类得到目标分类;调用目标工具对所述目标分类中的结构化查询语句进行执行计划分析得到分析结果;根据所述分析结果确定异常语句。2.根据权利要求1所述的方法,其特征在于,所述对所述待处理程序包中的结构化查询语句进行分类得到目标分类,包括:获取当前待处理程序包;识别所述当前待处理程序包中的目标对象,以对所述当前待处理程序包进行第一次分类得到待处理分类;对所述待处理分类中的结构化查询语句进行第二次分类以得到目标分类。3.根据权利要求2所述的方法,其特征在于,在所述获取当前待处理程序包之后,还包括:当所述当前待处理程序包调用了其他程序包,则将所述其他程序包作为当前待处理程序包,并继续执行识别所述当前待处理程序包中的目标对象,以对所述当前待处理程序包进行第一次分类得到待处理分类的步骤;在所述对所述待处理分类中的结构化查询语句进行第二次分类以得到目标分类之后,还包括:生成所述目标分类对应的调用关系。4.根据权利要求1至3任意一项所述的方法,其特征在于,所述对所述待处理程序包中的结构化查询语句进行分类得到目标分类,包括:通过Python语言对所述待处理程序包中的结构化查询语句进行分类得到目标分类。5.根据权利要求1所述的方法,其特征在于,所述调...

【专利技术属性】
技术研发人员:王攀
申请(专利权)人:太平金融科技服务上海有限公司
类型:发明
国别省市:

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

1