CN112783867A - 为满足实时大数据业务需求的数据库优化方法及云服务器 - Google Patents
为满足实时大数据业务需求的数据库优化方法及云服务器 Download PDFInfo
- Publication number
- CN112783867A CN112783867A CN202110129984.3A CN202110129984A CN112783867A CN 112783867 A CN112783867 A CN 112783867A CN 202110129984 A CN202110129984 A CN 202110129984A CN 112783867 A CN112783867 A CN 112783867A
- Authority
- CN
- China
- Prior art keywords
- query
- database
- information
- statement
- optimized
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/217—Database tuning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2358—Change logging, detection, and notification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开的为满足实时大数据业务需求的数据库优化方法及云服务器,根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息以及目标数据库的业务状态,确定当前组待优化数据库表的查询日志漏洞的优化指标调整结果以得到对应的已修复查询日志漏洞的目标数据库表。由于本申请实施例无需进行数据库硬件升级以优化数据库,而是按照语句结构信息来进行数据结构、SQL以及索引层面的优化的,可以减部分缺失据库优化的开销成本,提高当前组待优化数据库表的查询日志漏洞信息的漏洞升级效率,通过语句结构信息的方式可以高效稳定地进行查询日志漏洞的指标优化升级,不易出现优化升级过程中数据库状态异常的问题。
Description
技术领域
本申请涉及大数据和数据库技术领域,特别涉及一种为满足实时大数据业务需求的数据库优化方法及云服务器。
背景技术
科学技术的发展促使物联网、云计算和移动互联网等技术的日益成熟,此外,伴随着智能移动终端(例如手机和穿戴式智能设备)的普及,现目前的数据量呈爆发式增长。进一步地,随着交互式业务的类型和数量的不断增多,为满足不同领域的结构化数据存储需求,引入了关系型数据库(Relational database),是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的行和列被称为表,一组表组成了数据库。用户通过查询来检索数据库中的数据,而查询是一个用于限定数据库中某些区域的执行代码。关系模型可以简单理解为二维表格模型,而一个关系型数据库就是由二维表及其之间的关系组成的一个数据组织。
近年来,大数据业务的热度不断增加,许多行业为了吸引用户、提高服务质量,都会进行相关的大数据分析和挖掘,而在进行大数据分析和挖掘的过程中,通常需要与数据库进行通信以实现相关业务数据的查询。然而,随着数据库的数据规模的不断扩大,数据库的性能可能会出现降低,这样难以满足实时的大数据业务需求,统计表明,用户在进行数据查询时,所能承受的最大查询等待时长约为8秒,因此,数据库的查询耗时是一个优化方向。此外,数据库的查询精度也是一个优化方向。然而,相关技术在对数据库进行优化时开销较大,且在数据库的优化过程中容易引起数据库的状态异常。
发明内容
本申请实施例之一提供一种为满足实时大数据业务需求的数据库优化方法,应用于云服务器,所述方法包括:
确定当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息;
根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及目标数据库的业务状态,确定当前组待优化数据库表的查询日志漏洞的优化指标调整结果,并得到与当前组待优化数据库表相对应的已修复查询日志漏洞的目标数据库表。
优选的,根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及目标数据库的业务状态,确定当前组待优化数据库表的查询日志漏洞的优化指标调整结果,并得到与当前组待优化数据库表相对应的已修复查询日志漏洞的目标数据库表,包括:
根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及查询日志漏洞信息包括的结构化查询语句的语句结构信息与上一组针对目标数据库的业务状态获取到的查询事件记录包括的结构化查询语句的语句结构信息之间的对应关系,从上一组获取到的查询事件记录中确定当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息;
获取当前组之前的连续多组待优化数据库表的查询日志漏洞信息的动态优化指标信息,将获取的当前组之前的连续多组待优化数据库表的查询日志漏洞信息的动态优化指标信息,以及当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息进行基于业务需求层面的指标调整,得到当前组待优化数据库表的查询日志漏洞的优化指标调整结果;
将所述查询日志漏洞的优化指标调整结果绑定在所述当前组待优化数据库表的查询日志漏洞信息中,得到已修复查询日志漏洞的目标数据库表。
优选的,所述确定当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,包括:
获取查询日志漏洞信息包括的结构化查询语句的语句结构信息与目标数据库的查询语句约束信息和查询路径更新信息的第一查询映射关系;
根据所述目标数据库在上一组的查询语句约束信息和查询路径更新信息,以及上一组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,按照所述第一查询映射关系,确定当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息。
优选的,所述确定当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,包括:
获取所述目标数据库的数据调用记录信息,以及与所述目标数据库的业务状态匹配的业务执行端的业务交互内容;
根据所述目标数据库的数据调用记录信息和与所述目标数据库的业务状态匹配的业务执行端的业务交互内容,确定针对所述目标数据库的待优化数据库表的查询日志漏洞信息的数据调用记录信息;
通过针对所述目标数据库的待优化数据库表的查询日志漏洞信息的数据调用记录信息,确定当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息。
优选的,所述根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及查询日志漏洞信息包括的结构化查询语句的语句结构信息与上一组针对目标数据库的业务状态获取到的查询事件记录包括的结构化查询语句的语句结构信息之间的对应关系,从上一组获取到的查询事件记录中确定当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息,包括:
根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,从上一组待优化数据库表中确定出多个第一结构化查询语句;
将所述多个第一结构化查询语句的语句结构信息,按照缓存空间时效指标的关联时效指标进行调整,得到所述多个第一结构化查询语句在上一组获取到的查询事件记录中对应的第二结构化查询语句,所述缓存空间时效指标用于指示获取到的查询事件记录更新为全局查询事件记录的关系;
将所述多个第二结构化查询语句的语句关键词作为当前组待优化数据库表的查询日志漏洞信息中对应结构化查询语句的语句关键词进行指标优化,得到当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息。
优选的,所述根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及查询日志漏洞信息包括的结构化查询语句的语句结构信息与上一组针对目标数据库的业务状态获取到的查询事件记录包括的结构化查询语句的语句结构信息之间的对应关系,从上一组获取到的查询事件记录中确定当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息,包括:
根据所述目标数据库在当前组的数据调用路径,从上一组的多个全局查询事件记录中选择至少一个全局查询事件记录,所述多个全局查询事件记录为上一组针对所述目标数据库的业务状态获取到的多个查询事件记录调整得到的;
根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,从选择的至少一个全局查询事件记录中确定出多个第一结构化查询语句;
将所述多个第一结构化查询语句的语句结构信息,按照缓存空间时效指标的关联时效指标进行调整,得到所述多个第一结构化查询语句在选择的至少一个全局查询事件记录对应的目标查询事件记录中对应的第二结构化查询语句的语句结构信息,所述缓存空间时效指标用于指示获取到的查询事件记录调整为全局查询事件记录的关系;
将所述多个第二结构化查询语句的语句关键词作为当前组待优化数据库表的查询日志漏洞信息中对应结构化查询语句的语句关键词进行指标优化,得到当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息。
优选的,所述根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及查询日志漏洞信息包括的结构化查询语句的语句结构信息与上一组针对目标数据库的业务状态获取到的查询事件记录包括的结构化查询语句的语句结构信息之间的对应关系,从上一组获取到的查询事件记录中确定当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息,包括:
根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,将当前组待优化数据库表的查询日志漏洞信息按照缓存空间时效指标的关联时效指标进行调整;
获取查询日志漏洞信息包括的结构化查询语句的语句结构信息与目标数据库的查询语句约束信息和查询路径更新信息的第二查询映射关系;
根据所述目标数据库在上一组的查询语句约束信息和查询路径更新信息,按照所述第二查询映射关系,确定调整后的当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句在上一组获取到的查询事件记录中对应的多个第二结构化查询语句;
将所述多个第二结构化查询语句的语句关键词作为当前组待优化数据库表的查询日志漏洞信息中对应结构化查询语句的语句关键词进行指标优化,得到当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息。
优选的,所述方法还包括:
基于所述已修复查询日志漏洞的目标数据库表,对所述目标数据库进行基于目标业务需求响应的查询测试,并根据查询测试结果对所述目标数据库表进行调整。
优选的,基于所述已修复查询日志漏洞的目标数据库表,对所述目标数据库进行基于目标业务需求响应的查询测试,并根据查询测试结果对所述目标数据库表进行调整,包括:
获取已激活查询业务状态中的用户侧业务数据和数据库侧业务数据;其中,所述已激活查询业务状态是基于针对目标数据库表的数据查询业务请求激活的;
基于所述已激活查询业务状态中的用户侧业务数据和数据库侧业务数据之间的业务数据响应匹配度,对所述已激活查询业务状态中的用户侧业务数据和数据库侧业务数据进行查询索引配准,得到业务数据配准结果;
将查询索引配准存在异常的数据库侧业务数据确定为待处理数据库侧业务数据,根据所述业务数据配准结果中的数据库侧业务数据与所述待处理数据库侧业务数据之间的业务数据相关度,确定与所述待处理数据库侧业务数据相匹配的查询语句冗余信息;
对与所述待处理数据库侧业务数据相匹配的查询语句冗余信息和所述待处理数据库侧业务数据进行查询索引配准,得到冗余信息配准结果;
根据所述冗余信息配准结果和所述业务数据配准结果,确定所述已激活查询业务状态中的全局索引扫描结果和所述全局索引扫描结果对应的查询语句冗余信息;
通过所述全局索引扫描结果和所述全局索引扫描结果对应的查询语句冗余信息,得到所述查询测试结果,若所述查询测试结果表征所述已激活查询业务状态对应的性能损耗指标达到预设指标,则根据所述性能损耗指标对所述目标数据库表对应的表结构进行调整;
其中,所述获取已激活查询业务状态中的用户侧业务数据和数据库侧业务数据,包括:
获取所述已激活查询业务状态中的至少两个用户侧事件内容和至少两个数据库侧事件内容;
获取所述至少两个用户侧事件内容之间的用户侧事件内容相关度和用户侧事件内容影响度,获取所述至少两个数据库侧事件内容之间的数据库侧事件内容相关度和数据库侧事件内容影响度;
根据所述用户侧事件内容相关度和所述用户侧事件内容影响度,对所述至少两个用户侧事件内容进行整理,得到所述已激活查询业务状态中的用户侧业务数据;一个用户侧业务数据包括至少一个用户侧事件内容;
根据所述数据库侧事件内容相关度和所述数据库侧事件内容影响度,对所述至少两个数据库侧事件内容进行整理,得到所述已激活查询业务状态中的数据库侧业务数据;一个数据库侧业务数据包括至少一个数据库侧事件内容;
其中,所述基于所述已激活查询业务状态中的用户侧业务数据和数据库侧业务数据之间的业务数据响应匹配度,对所述已激活查询业务状态中的用户侧业务数据和数据库侧业务数据进行查询索引配准,得到业务数据配准结果,包括:
将所述已激活查询业务状态中的数据库侧业务数据确定为关联数据库侧业务数据,将所述已激活查询业务状态中的用户侧业务数据确定为关联用户侧业务数据;所述关联数据库侧业务数据中的数据库侧事件内容是从针对所述已激活查询业务状态的目标监测事件内容中所确定的;
获取所述目标监测事件内容中的用户侧事件内容;将所述目标监测事件内容中的用户侧事件内容与所述关联用户侧业务数据中的用户侧事件内容之间的事件内容相关度,确定为所述关联数据库侧业务数据与所述关联用户侧业务数据之间的所述业务数据响应匹配度;
当所述业务数据响应匹配度大于或等于响应匹配度阈值时,对所述关联数据库侧业务数据和所述关联用户侧业务数据进行查询索引配准,得到所述业务数据配准结果。
本申请实施例之一提供一种云服务器,包括处理引擎、网络模块和存储器;所述处理引擎和所述存储器通过所述网络模块通信,所述处理引擎从所述存储器中读取计算机程序并运行,以执行上述的方法。
在后面的描述中,将部分地陈述其他的特征。在检查后面内容和附图时,本领域的技术人员将部分地发现这些特征,或者可以通过生产或运用了解到这些特征。通过实践或使用后面所述详细示例中列出的方法、工具和组合的各个方面,当前申请中的特征可以被实现和获得。
附图说明
本申请将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
图1是根据本发明的一些实施例所示的一种示例性为满足实时大数据业务需求的数据库优化方法和/或过程的流程图;
图2是根据本发明的一些实施例所示的一种示例性为满足实时大数据业务需求的数据库优化装置的框图;
图3是根据本发明的一些实施例所示的一种示例性为满足实时大数据业务需求的数据库优化***的框图,以及
图4是根据本发明的一些实施例所示的一种示例性云服务器中硬件和软件组成的示意图。
具体实施方式
为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本文使用的“***”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本申请中使用了流程图用来说明根据本申请的实施例的***所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
为改善背景技术所述的技术问题,本发明实施例提供了为满足实时大数据业务需求的数据库优化方法及云服务器,进一步地,该方法可以总结如下:
确定当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息;
其中:
查询日志漏洞信息包括的结构化查询语句的语句结构信息是指查询日志漏洞信息包括的结构化查询语句在预设结构信息空间中的结构信息;
根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及目标数据库的业务状态,确定当前组待优化数据库表的查询日志漏洞的优化指标调整结果,并得到与当前组待优化数据库表相对应的已修复查询日志漏洞的目标数据库表。
选择性地,在得到与当前组待优化数据库表相对应的已修复查询日志漏洞的目标数据库表之后,将查询日志漏洞信息包括的结构化查询语句的语句结构信息进行标记。
如此设计,通过对查询日志漏洞信息包括的结构化查询语句的语句结构信息进行标记,能够提高后续的数据库漏洞分析的效率。
由此可见,该技术方案是基于结构化查询语句的语句结构信息进行数据库优化的,因而能够提高数据库的优化效率,并尽可能减少数据库优化过程中的异常状态。进一步地,关于该方法的总结,还可以通过以下进一步的实施方式实现。
首先,对为满足实时大数据业务需求的数据库优化方法进行示例性的说明,请参阅图1,是根据本发明的一些实施例所示的一种示例性为满足实时大数据业务需求的数据库优化方法和/或过程的流程图,为满足实时大数据业务需求的数据库优化方法可以包括以下步骤301-步骤304所描述的技术方案。
步骤301:确定当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息。
需要说明的是,当前组待优化数据库表是将当前组针对目标数据库的业务状态获取到的多个查询事件记录调整到为全局查询事件记录之后,将调整得到的多个全局查询事件记录进行时序融合后得到的,也即是,待优化数据库表中是有查询日志漏洞的数据库表。查询日志漏洞可以用于表征数据库在业务处理方面的一些缺陷,比如查询噪声过多、查询耗时较长等问题。其中,该多个目标查询事件记录可以通过与目标数据库的业务状态匹配的业务执行端获取得到,比如,可以通过与目标数据库的业务状态匹配的业务执行端d1、业务执行端d2、业务执行端d3和业务执行端d4获取得到。该多个目标查询事件记录可以为实时查询事件记录,也可以为延时查询事件记录,本申请实施例对此不做限定。示例性地,全局查询事件记录Note1、全局查询事件记录Note2、全局查询事件记录Note3和全局查询事件记录Note4是通过4个目标查询事件记录映射到预设结构信息空间中所得到的全局查询事件记录,且这4个目标查询事件记录可以基于上述匹配在目标数据库的业务状态下的业务执行端d1、业务执行端d2、业务执行端d3和业务执行端d4获取得到。
另外,查询日志漏洞信息包括的结构化查询语句的语句结构信息是指查询日志漏洞信息包括的结构化查询语句在预设结构信息空间中的结构信息,预设结构信息空间是静态的结构信息空间,也即是预设结构信息空间是不随时间的推移而发生变化的结构信息空间,预设结构信息空间可以根据使用需求预先进行设置,本申请实施例对此不做限定。例如,预设结构信息空间可以为结构信息列表空间、或者结构信息图像空间等。在本实施例中,结构化查询语句(Structured Query Language,SQL),是一种特殊目的的编程语句,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库***。举例而言,示例性的SQL语句可以为:
select it from t where num is null,
亦或者:
select it from t where num=10;
Union all;
select it from t where Name=‘damin’。
可以理解,关系型数据库中的SQL语句成千上万,在此不一一列举。
在一些实施例中,不同组的数据库表之间是存在时序关联关系的,对于数据库表而言,数据库中以表为组织单位存储数据,表类似java类,每个字段都有对应的数据类型,如果用java程序来与关系型数据对比,就会发现以下对应关系:类对应表,类中属性对应表中字段,对象对应记录。因此,数据库表对于数据库的正常业务办理而言是相对重要的,因此,在进行数据库优化时,需要对数据库表进行适应性地优化。
在一些实施例中,步骤301可以通过如下步骤(1)-步骤(2)来实现。
(1)获取查询日志漏洞信息包括的结构化查询语句的语句结构信息与目标数据库的查询语句约束信息和查询路径更新信息的第一查询映射关系。
目标数据库在数据调用的过程中,不仅存在存储数据分布的变化,还存在数据调用路径的变化,且查询日志漏洞信息包括的结构化查询语句的语句结构信息会随着目标数据库的数据调用状态的变化而变化,因此,查询日志漏洞信息包括的结构化查询语句的语句结构信息与目标数据库的查询语句约束信息和查询路径更新信息存在一定的查询映射关系。
通常情况下,在时序上相邻的两组之间的间隔时长相对较短,因此,在一些实施例中,查询日志漏洞信息包括的结构化查询语句的语句结构信息与目标数据库的查询语句约束信息和查询路径更新信息之间的第一查询映射关系可以通过如下一些量化描述关系来表示,例如,information1为当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的响应语句结构信息,information0为上一组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的响应语句结构信息,Constraints为该目标数据库在上一组的查询语句约束信息,t为上一组与当前组之间的时长,path为该目标数据库在上一组的查询路径更新信息。
那么information1、information0、Constraints以及path之间可以形成对应的映射关系,比如information1可以通过information0、Constraints以及path确定。又例如,information1还可以为当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的触发语句结构信息,information0为上一组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的触发语句结构信息。在本实施例中,响应语句结构信息可以对应目标数据库,触发语句结构信息可以对应用户终端。
需要说明的是,查询路径更新信息可以是目标数据库的历史查询路径与预设结构信息空间中的一个结构信息映射区域之间的路径匹配结果。或者,由于通常目标数据库的查询路径节点的更新信息与目标数据库的历史查询路径的更新信息之间存在一定的传递关系,所以查询路径更新信息还可以是目标数据库的查询路径节点的更新信息与该传递关系之间的匹配结果。例如,目标数据库的查询路径节点的更新信息与目标数据库的历史查询路径的更新信息之间的传递关系为m1=f(m0),m1可以为目标数据库的查询路径节点的更新信息,m0可以为目标数据库的历史查询路径的更新信息,f为传递关系。当然,查询路径更新信息还可以通过其他方式确定,本申请实施例对此不做限定。
接下来,通过举例的方式,对查询路径更新信息是目标数据库的历史查询路径与预设结构信息空间中的一个结构信息映射区域之间的路径匹配结果的情况进行说明。例如,在一些示例性的预设结构信息空间中,查询路径更新信息可以是目标数据库的历史查询路径与触发语句结构信息之间的路径匹配结果。当该目标数据库的历史查询路径对应于响应语句的数据发送路径变化时,查询路径更新信息可以包括发送路径对应的查询语句关键词,当该目标数据库的历史查询路径向响应语句的数据接收路径变化时,查询路径更新信息可以包括接收路径对应的查询语句关键词。另外,在一种可能的实现方式中,该目标数据库的查询语句约束信息,以及该目标数据库的查询路径更新信息可以通过目标数据库对应的预设脚本文件获取。当然,也可以通过其他方式获取,本申请实施例对此不做限定。
(2)根据目标数据库在上一组的查询语句约束信息和查询路径更新信息,以及上一组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,按照第一查询映射关系,确定当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息。
在一些实施例中,可以直接根据目标数据库在上一组的查询语句约束信息和查询路径更新信息,以及上一组待优化数据库表的查询日志漏洞信息包括的每个结构化查询语句的语句结构信息,按照上述两种量化描述关系,确定当前组待优化数据库表的查询日志漏洞信息包括的每个结构化查询语句的语句结构信息。但是该目标数据库在上一组的查询语句约束信息、该目标数据库在上一组的查询路径更新信息可能存在部分缺失,也即不是完整信息,或者该目标数据库在上一组的查询路径更新信息为完整信息,但是对应的两类路径的路径拓扑信息不是完整信息。所以,按照上述两种量化描述关系确定出的结构信息可能存在部分缺失,此时可以通过信息补全的方式,来确定当前组待优化数据库表的查询日志漏洞信息包括的每个结构化查询语句的语句结构信息,从而便于后续查询日志漏洞的优化指标调整结果的生成。也即是,根据目标数据库在上一组的查询语句约束信息和目标数据库更新信息,以及上一组待优化数据库表的查询日志漏洞信息包括的每个结构化查询语句的语句结构信息,按照上述两种量化描述关系确定当前组待优化数据库表的查询日志漏洞信息包括的每个结构化查询语句的初始结构信息。将当前组待优化数据库表的查询日志漏洞信息包括的每个结构化查询语句的初始结构信息进行信息补全,得到当前组待优化数据库表的查询日志漏洞信息包括的每个结构化查询语句的语句结构信息。
作为一种示例,可以将当前组待优化数据库表的查询日志漏洞信息包括的每个结构化查询语句的初始结构信息进行基于查询语句逻辑层面的信息补全,或者进行基于查询业务需求层面的信息补全,或者根据数据库预先配置的查询语句执行指示进行信息补全等,本申请实施例对此不做限定。例如,{ac,oq}为当前组待优化数据库表的查询日志漏洞信息包括的一个结构化查询语句的初始结构信息,对{ac,oq}这个结构信息进行基于查询语句逻辑层面的信息补全即得到{abc,opq},对{ac,oq}这个结构信息进行基于查询业务需求层面的信息补全即得到{abcd,opqr},对{ac,oq} 这个结构信息根据数据库预先配置的查询语句执行指示的原理进行信息补全即得到{ab,opqr}。其中“{}”中的字母可以代表不同的查询语句的结构信息,当然,在具体实施过程中,也可以将对应的结构信息完整地进行表示,在此不作限定。
上述步骤(1)-(2)是实现步骤301的一种可能的实现方式,也即是,本申请实施例不仅可以通过上述步骤(1)-(2)来确定当前组待优化数据库表的查询日志漏洞信息包括的每个结构化查询语句的语句结构信息,还可以通过其他的方式来确定。比如,在一种可能的实现方式中,可以获取目标数据库的数据调用记录信息,以及目标数据库的业务状态匹配的业务执行端的业务交互内容。根据目标数据库的数据调用记录信息和目标数据库的业务状态匹配的业务执行端的业务交互内容,确定针对目标数据库的待优化数据库表的查询日志漏洞信息的数据调用记录信息。通过针对目标数据库的待优化数据库表的查询日志漏洞信息的数据调用记录信息,确定当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息。
由于业务执行端是通信连接于目标数据库的,因此,业务执行端的业务交互内容也是存在业务交互特性的,这样,可以确定业务执行端的业务交互内容以及业务执行端获取到的查询事件记录之间的传递关系。由于根据目标数据库的数据调用记录信息,可以确定目标数据库在查询日志漏洞层面上的绑定信息。根据目标数据库在查询日志漏洞层面上的绑定信息,以及上述的传递关系,可以确定出待优化数据库表中查询日志漏洞信息的数据调用记录信息。由于查询日志漏洞信息的数据调用记录信息可以确定出来,而且待优化数据库表的表结构信息可以预先获取到,因此,可以确定出查询日志漏洞信息中包括的结构化查询语句的数目,进而可以确定出查询日志漏洞信息中的每个结构化查询语句的语句结构信息。
步骤302:根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及查询日志漏洞信息包括的结构化查询语句的语句结构信息与上一组针对目标数据库的业务状态获取到的查询事件记录包括的结构化查询语句的语句结构信息之间的对应关系,从上一组获取到的查询事件记录中确定当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息。
在本申请实施例中,可以根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及查询日志漏洞信息包括的结构化查询语句的语句结构信息与上一组针对目标数据库的业务状态获取到的查询事件记录包括的结构化查询语句的语句结构信息之间的对应关系,按照如下三种方式,从上一组获取到的查询事件记录中确定当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息,接下来对这三种方式分别进行解释说明。
第一种方式,根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,从上一组待优化数据库表中确定出多个第一结构化查询语句。将多个第一结构化查询语句的语句结构信息,按照缓存空间时效指标的关联时效指标进行调整,得到多个第一结构化查询语句在上一组获取到的查询事件记录中对应的第二结构化查询语句。将多个第二结构化查询语句的语句关键词作为当前组待优化数据库表的查询日志漏洞信息中对应结构化查询语句的语句关键词进行指标优化,得到当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息。
由于待优化数据库表是将基于目标数据库的业务状态获取到的查询事件记录调整为全局查询事件记录之后,对全局查询事件记录进行时序融合得到的,全局查询事件记录是处于预设结构信息空间中的,查询日志漏洞信息包括的结构化查询语句的语句结构信息也是处于预设结构信息空间中的结构信息,也即是,全局查询事件记录和查询日志漏洞信息处于同一结构信息空间。而且,缓存空间时效指标用于指示获取到的查询事件记录调整为全局查询事件记录的关系,那么,缓存空间时效指标的关联时效指标就用于指示全局查询事件记录调整为获取到的查询事件记录的关系。因此,当从上一组待优化数据库表中确定出多个第一结构化查询语句之后,可以按照缓存空间时效指标确定这多个第一结构化查询语句在上一组获取到的查询事件记录中对应的第二结构化查询语句。其中,通过引入缓存空间时效指标,能够将数据库的不同数据存储区的存储时效情况考虑在内,从而确保指标优化时能够尽可能考虑到时效性,这样,可以确保优化之后的数据库尽可能快速地响应相关的查询业务需求。
另外,由于待优化数据库表是多个全局查询事件记录时序融合得到的,而且应当理解的是,多个目标查询事件记录映射到预设结构信息空间中所得到的全局查询事件记录可能会存在时序偏差或时序缺失等现象,使得所得到的全局查询事件记录的记录内容的可靠性低于目标查询事件记录的记录内容的可靠性。因此,为了确保当前组待优化数据库表的查询日志漏洞信息的记录内容的可靠性具有更高的可靠性,可以从目标查询事件记录中获取第二结构化查询语句的语句关键词作为当前组待优化数据库表的查询日志漏洞信息中对应结构化查询语句的语句关键词进行指标优化。
需要说明的一点是,由于时序层面上的连续性,上一组待优化数据库表与当前组待优化数据库表的查询日志漏洞信息存在互相影响部分,因此,可以根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,从上一组待优化数据库表中确定出多个第一结构化查询语句。其中,多个第一结构化查询语句的语句结构信息可以与当前组待优化数据库表的查询日志漏洞信息中对应结构化查询语句的语句结构信息相同或者信息差异度在预设差异度范围内。其中,预设差异度范围可以根据使用需求预先进行设置,本申请实施例对此不做限定。换句话说,上一组数据库表中,与当前组待优化数据库表的查询日志漏洞信息中的结构化查询语句的语句结构信息相同,或者信息差异度在该预设差异度范围内的结构化查询语句可以作为第一结构化查询语句。
需要说明的另一点是,本申请实施例不仅可以将多个第二结构化查询语句的语句关键词作为当前组待优化数据库表的查询日志漏洞信息中对应结构化查询语句的语句关键词进行指标优化,还可以通过其他的方式来进行指标优化。比如,可以对多个第二结构化查询语句的语句关键词进行调整,将调整后的多个第二结构化查询语句的语句关键词作为当前组待优化数据库表的查询日志漏洞信息中对应结构化查询语句的语句关键词进行指标优化。其中,调整的方式可以为:对于某个第二结构化查询语句,确定这个第二结构化查询语句的上下文范围内的结构化查询语句的关联语句关键词,如果这个第二结构化查询语句的语句关键词与其上下文范围内的结构化查询语句的关联语句关键词的余弦距离大于参考余弦距离,那么,可以确定这个第二结构化查询语句的语句关键词可能为异常关键词,此时,可以通过其上下文范围内的结构化查询语句的关联语句关键词来代替这个第二结构化查询语句的语句关键词。在本实施例中,余弦距离可以理解为关键词之间的词向量距离。
第二种方式,根据目标数据库在当前组的数据调用路径,从上一组的多个全局查询事件记录中选择至少一个全局查询事件记录,该多个全局查询事件记录为上一组针对目标数据库的业务状态获取到的多个查询事件记录调整得到的。根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,从选择的至少一个全局查询事件记录中确定出多个第一结构化查询语句。将多个第一结构化查询语句的语句结构信息,按照缓存空间时效指标的关联时效指标进行调整,得到多个第一结构化查询语句在选择的至少一个全局查询事件记录对应的目标查询事件记录中对应的第二结构化查询语句。将多个第二结构化查询语句的语句关键词作为当前组待优化数据库表的查询日志漏洞信息中对应结构化查询语句的语句关键词进行指标优化,得到当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息。
需要说明的是,目标数据库在当前组的数据调用路径可以根据目标数据库在当前组的查询路径更新信息和变化路径来确定。由上述步骤301可知,目标数据库的查询路径更新信息可以是目标数据库的历史查询路径在当前组与预设结构信息空间中的一个结构信息映射区域之间的路径匹配结果,这样,目标数据库的数据调用路径,即可以根据目标数据库的历史查询路径在当前组与预设结构信息空间中的一个结构信息映射区域之间的路径匹配结果和变化路径来确定。其中,变化路径是指历史查询路径对应的重复交互型的查询业务事件的数据传输路径的变化路径。当历史查询路径对应的重复交互型的查询业务事件的数据传输路径为存在数据压缩传输的路径变化时,变化路径可以包括存在数据压缩传输的路径;当历史查询路径对应的重复交互型的查询业务事件的数据传输路径为存在数据拆分传输的路径变化时,变化路径可以包括存在数据拆分传输的路径。当目标数据库的历史查询路径在当前组与预设结构信息空间中的一个结构信息映射区域之间的路径匹配结果为第一设定匹配结果,且变化路径为存在数据压缩传输的路径时,目标数据库在当前组的数据调用路径可以包括实时调用路径;当目标数据库的历史查询路径在当前组与预设结构信息空间中的一个结构信息映射区域之间的路径匹配结果为第一设定匹配结果,且变化路径为存在数据拆分传输的路径时,目标数据库在当前组的数据调用路径可以包括延时调用路径;类似地,当目标数据库的历史查询路径在当前组与预设结构信息空间中的一个结构信息映射区域之间的路径匹配结果不为第一设定匹配结果时,根据目标数据库的历史查询路径在当前组与预设结构信息空间中的一个结构信息映射区域之间的路径匹配结果和变化路径,也可确定出目标数据库在当前组的数据调用路径。其中,第一设定匹配结果可以是根据路径相似度预先设置的,在此不作限定。
接下来,通过举例的方式对根据目标数据库的历史查询路径在当前组与预设结构信息空间中的一个结构信息映射区域之间的路径匹配结果和变化路径,确定目标数据库在当前组的数据调用路径进行说明。
例如,当目标数据库的历史查询路径在当前组与预设结构信息空间中的触发语句结构信息之间的路径匹配结果为第一设定匹配结果,且变化路径为存在数据压缩传输的路径时,目标数据库在当前组的数据调用路径可以包括实时调用路径。当目标数据库的历史查询路径在当前组与预设结构信息空间中的触发语句结构信息之间的路径匹配结果为第一设定匹配结果,且变化路径为存在数据拆分传输的路径时,目标数据库在当前组的数据调用路径可以包括延时调用路径;当目标数据库的历史查询路径在当前组与预设结构信息空间中的触发语句结构信息之间的路径匹配结果为第二设定匹配结果,且变化路径为存在数据压缩传输的路径时,目标数据库在当前组的数据调用路径可以看做是存在间歇性数据调用的路径。当目标数据库的历史查询路径在当前组与预设结构信息空间中的触发语句结构信息之间的路径匹配结果为第三设定匹配结果,且变化路径为存在数据压缩传输的路径时,目标数据库在当前组的数据调用路径可以看做是存在预约性数据调用的路径。当目标数据库的历史查询路径在当前组与预设结构信息空间中的触发语句结构信息之间的路径匹配结果为第二设定匹配结果,且变化路径为存在数据拆分传输的路径时,目标数据库在当前组的数据调用路径可以看做是存在验证性数据调用的路径。当目标数据库的历史查询路径在当前组与预设结构信息空间中的触发语句结构信息之间的路径匹配结果为第三设定匹配结果,且变化路径为存在数据拆分传输的路径时,目标数据库在当前组的数据调用路径可以看做是存在免验证性数据调用的路径。
在一些实施例中,针对目标数据库的业务状态获取到的多个查询事件记录映射到预设结构信息空间中的实施方式可以是:通过将多个目标查询事件记录中的每个目标查询事件记录包括的结构化查询语句的结构信息,分别通过缓存空间时效指标进行转换,即可将该多个目标查询事件记录映射到预设结构信息空间中。或者,通过将多个目标查询事件记录中的每个目标查询事件记录包括的结构化查询语句的结构信息组成的时效指标,通过缓存空间时效指标进行转换,即可将该多个目标查询事件记录映射到预设结构信息空间中。其中,缓存空间时效指标为表述目标查询事件记录与全局查询事件记录之间的查询映射关系的时效指标。根据缓存空间时效指标,可以实现将该多个目标查询事件记录映射到预设结构信息空间中,得到该多个全局查询事件记录,相反地,根据缓存空间时效指标的关联时效指标,可以实现将该多个全局查询事件记录映射到预设结构信息空间中,得到该多个目标查询事件记录。在此不作限定。
由于通常情况下,上一组业务状态和当前组业务状态之间的时间间隔可能相对较短,例如,上一组业务状态和当前组业务状态之间的时间间隔可以为XX秒等。所以目标数据库在上一组业务状态和当前组业务状态的查询路径更新信息可以看做是相同的。这样的条件下,可以通过如下两种情况对上述步骤302进行说明。
第一种情况,当目标数据库在上一组的查询路径更新信息表征不存在更新时,即目标数据库在上一组的数据调用路径为实时调用路径或者延时调用路径,那么目标数据库在当前组的数据调用路径也可以看做是实时调用路径或者延时调用路径。此时,如果目标数据库在当前组的数据调用路径为实时调用路径,则表明上一组的多个全局查询事件记录中,包括目标数据库在上一组的实时调用路径的业务触发事件的至少一个全局查询事件记录所表征的业务指标信息,与当前组的查询日志漏洞信息所表征的业务指标信息之间存在互相影响,所以可以从上一组的多个全局查询事件记录中,选择包括目标数据库在上一组的实时调用路径的业务触发事件的至少一个全局查询事件记录。如果目标数据库在当前组的数据调用路径为延时调用路径,则表明上一组的多个全局查询事件记录中,包括目标数据库在上一组的延时调用路径的业务触发事件的至少一个全局查询事件记录所表征的业务指标信息,与当前组的查询日志漏洞信息所表征的业务指标信息之间存在互相影响,所以可以从上一组的多个全局查询事件记录中,选择包括目标数据库在上一组的延时调用路径的业务触发事件的至少一个全局查询事件记录。
举例而言,如果目标数据库在当前组的数据调用路径为实时调用路径,则表明匹配在处于激活状态的调用路径的业务执行端d1在上一组获取的目标查询事件记录映射到预设结构信息空间中得到的全局查询事件记录所表征的业务指标信息,与当前组的查询日志漏洞信息所表征的业务指标信息之间存在互相影响。此时,可以从上一组的多个全局查询事件记录中,选择匹配在处于激活状态的调用路径的业务执行端d1获取的目标查询事件记录映射到预设结构信息空间中得到的全局查询事件记录。同理,如果目标数据库在当前组的数据调用路径为延时调用路径时,可以从上一组的多个全局查询事件记录中,选择匹配在处于等待状态的调用路径的业务执行端d3获取的目标查询事件记录映射到预设结构信息空间中得到的全局查询事件记录。
第二种情况,当目标数据库在上一组的查询路径更新信息表征存在更新时,目标数据库的数据调用路径会随着时间的推移而发生变化,也即目标数据库在上一组的数据调用路径与当前组的数据调用路径不相同。此时,如果目标数据库在当前组的数据调用路径为存在间歇性数据调用的路径,则确定目标数据库在当前组的数据调用路径与上一组的数据调用路径之间的路径匹配结果对应的匹配度是否大于预设匹配度阈值。如果大于预设匹配度阈值,则表明在上一组的多个全局查询事件记录中,包括目标数据库在上一组的动态和静态的业务触发事件的至少一个全局查询事件记录所表征的业务指标信息,与当前组的查询日志漏洞信息所表征的业务指标信息之间存在互相影响,所以可以从上一组的多个全局查询事件记录中,选择包括目标数据库在上一组的动态和静态的业务触发事件的至少一个全局查询事件记录。如果小于预设匹配度阈值,则表明在上一组的多个全局查询事件记录中,包括目标数据库在上一组的动态的业务触发事件的至少一个全局查询事件记录所表征的业务指标信息,与当前组的查询日志漏洞信息所表征的业务指标信息之间存在互相影响,所以可以从上一组的多个全局查询事件记录中,选择包括目标数据库在上一组的动态的业务触发事件的至少一个全局查询事件记录。同理,如果目标数据库在当前组的数据调用路径为存在预约性数据调用的路径、存在验证性数据调用的路径或者存在非验证性数据调用的路径,可以根据相似地方式从上一组的多个全局查询事件记录中选择至少一个全局查询事件记录。此处不再赘述。其中,预设匹配度阈值可以根据使用需求预先进行设置,本申请实施例对此不做限定。
例如,如果目标数据库在当前组的数据调用路径为存在间歇性数据调用的路径,且目标数据库在当前组的数据调用路径与上一组的数据调用路径之间的路径匹配结果对应的匹配度大于预设匹配度阈值。则从上一组的多个全局查询事件记录中,选择匹配在处于激活状态的调用路径的业务执行端d1,以及匹配在处于校验状态的调用路径的业务执行端d2获取的两个目标查询事件记录映射到预设结构信息空间中得到的两个全局查询事件记录。如果目标数据库在当前组的数据调用路径为存在间歇性数据调用的路径,且目标数据库在当前组的数据调用路径与上一组的数据调用路径之间的路径匹配结果对应的匹配度小于预设匹配度阈值,则从上一组的多个全局查询事件记录中,选择匹配在处于激活状态的调用路径的业务执行端d1获取的一个目标查询事件记录映射到预设结构信息空间中得到的一个全局查询事件记录。如果目标数据库在当前组的数据调用路径为存在预约性数据调用的路径,且目标数据库在当前组的数据调用路径与上一组的数据调用路径之间的路径匹配结果对应的匹配度大于预设匹配度阈值,则从上一组的多个全局查询事件记录中,选择匹配在处于激活状态的调用路径的业务执行端d1,以及匹配在处于校验状态的调用路径的业务执行端d4获取的两个目标查询事件记录映射到预设结构信息空间中得到的两个全局查询事件记录。如果目标数据库在当前组的数据调用路径为存在预约性数据调用的路径,且目标数据库在当前组的数据调用路径与上一组的数据调用路径之间的路径匹配结果对应的匹配度小于预设匹配度阈值,则从上一组的多个全局查询事件记录中,选择匹配在处于激活状态的调用路径的业务执行端d1获取的一个目标查询事件记录映射到预设结构信息空间中得到的一个全局查询事件记录。同理,如果目标数据库在当前组的数据调用路径为存在验证性数据调用的路径或者存在非验证性数据调用的路径,可以根据相似地方式从上一组的多个全局查询事件记录中选择至少一个全局查询事件记录。此处不再赘述。
上述仅示例性地以两种可能的情况说明了如何根据目标数据库在当前组的数据调用路径,从上一组的多个全局查询事件记录中选择至少一个全局查询事件记录。实际应用中还可以通过其他方式根据目标数据库在当前组的数据调用路径,从上一组的多个全局查询事件记录中选择至少一个全局查询事件记录,本申请实施例对此不做限定。
在上述第二种方式中,当选择出至少一个全局查询事件记录之后,对于选择出的至少一个全局查询事件记录中的第一全局查询事件记录,根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,从第一全局查询事件记录中确定出多个第一结构化查询语句,将该多个第一结构化查询语句的语句结构信息,按照缓存空间时效指标的关联时效指标进行调整,得到该多个第一结构化查询语句在第一目标查询事件记录中对应的第二结构化查询语句的语句结构信息。将该多个第二结构化查询语句的语句关键词作为当前组待优化数据库表的查询日志漏洞信息中对应结构化查询语句的语句关键词进行指标优化。其中,第一目标查询事件记录为多个目标查询事件记录中与第一全局查询事件记录存在查询映射关系的查询事件记录,第一全局查询事件记录为该至少一个全局查询事件记录中的任意一个全局查询事件记录。当选择出的每个全局查询事件记录都按照上述方法处理之后,即可得到当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息。
接下来通过举例的方式,对第二种方式进行说明。
例如,目标数据库在当前组的数据调用路径为实时调用路径,根据目标数据库的数据调用路径选择出的至少一个全局查询事件记录为全局查询事件记录Note1,又例如,目标报错信息error1为上一组待优化数据库表的查询日志漏洞信息,目标报错信息error2为当前组待优化数据库表的查询日志漏洞信息。再例如,目标报错信息error3所表征的业务指标信息,为当前组待优化数据库表的查询日志漏洞信息所表征的业务指标信息与全局查询事件记录Note1所表征的业务指标信息之间的互相影响信息。也即是全局查询事件记录Note1中目标报错信息error3包括的多个结构化查询语句为多个第一结构化查询语句。这样,可以确定多个第一结构化查询语句在全局查询事件记录Note1对应的目标查询事件记录中对应的第二结构化查询语句,然后,将多个第二结构化查询语句的语句关键词作为目标报错信息error3 中对应结构化查询语句的语句关键词加载至当前组待优化数据库表的查询日志漏洞信息中,进而得到当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息。
又例如,目标数据库在当前组的数据调用路径为存在间歇性数据调用的路径,根据目标数据库的数据调用路径选择出的至少一个全局查询事件记录可以为全局查询事件记录Note1和全局查询事件记录Note2。比如,目标报错信息error1为上一组待优化数据库表的查询日志漏洞信息,目标报错信息error2为当前组待优化数据库表的查询日志漏洞信息。结合另一个示例而言,目标报错信息error4所表征的业务指标信息,为当前组待优化数据库表的查询日志漏洞信息与全局查询事件记录Note1所表征的业务指标信息之间的互相影响信息;目标报错信息error5所表征的业务指标信息,为当前组待优化数据库表的查询日志漏洞信息与全局查询事件记录Note2所表征的业务指标信息之间的互相影响信息。也即是全局查询事件记录Note1中目标报错信息error4包括的多个结构化查询语句为全局查询事件记录Note1包括的多个第一结构化查询语句,全局查询事件记录Note2中目标报错信息error5包括的多个结构化查询语句为全局查询事件记录Note2包括的多个第一结构化查询语句。这样,可以确定目标报错信息error4包括的多个结构化查询语句在全局查询事件记录Note1对应的目标查询事件记录中对应的第二结构化查询语句,以及确定目标报错信息error5包括的多个结构化查询语句在全局查询事件记录Note2对应的目标查询事件记录中对应的第二结构化查询语句。然后,将从全局查询事件记录Note1对应的目标查询事件记录中确定出的第二结构化查询语句的语句关键词作为目标报错信息error4中对应结构化查询语句的语句关键词加载至当前组待优化数据库表的查询日志漏洞信息中的目标报错信息error4中,以及将从全局查询事件记录Note2对应的目标查询事件记录中确定出的第二结构化查询语句的语句关键词作为目标报错信息error5中对应结构化查询语句的语句关键词加载至当前组待优化数据库表的查询日志漏洞信息中目标报错信息error5中,进而得到当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息。
值得注意的是,在一种可能的情况中,当选择出的至少一个全局查询事件记录的数目大于或等于2时,在时序上相邻的两个全局查询事件记录之间可能存在互相影响,也即是,在在时序上相邻的两个全局查询事件记录的事件内容记载区域,存在两个语句结构信息相同但来自不同全局查询事件记录的结构化查询语句。这样的情况下,这两个语句结构信息相同但来自不同全局查询事件记录的结构化查询语句可能对应着当前组待优化数据库表的查询日志漏洞信息中的同一个结构化查询语句。此时,可以将这两个语句结构信息相同但来自不同全局查询事件记录的结构化查询语句的关联语句关键词,确定为这两个结构化查询语句在当前组待优化数据库表的查询日志漏洞信息中对应的结构化查询语句的语句关键词,这样可以消除可能存在的语句查询干扰。当然,也可以通过其他方式确定,本申请实施例对此不做限定。
由于选择出的至少一个全局查询事件记录是从上一组的多个全局查询事件记录中选择的,而上一组的多个全局查询事件记录为获取到的目标数据库的业务状态的多个目标查询事件记录映射到预设结构信息空间中所得到的全局查询事件记录。所以,应当理解的是,该多个目标查询事件记录映射到预设结构信息空间中所得到的全局查询事件记录可能会存在时序偏差或时序缺失等现象,使得所得到的全局查询事件记录的记录内容的可靠性低于该多个查询事件记录的记录内容的可靠性。因此,为了使得当前组的查询日志漏洞信息的记录内容的可靠性更高,可以从至少一个全局查询事件记录对应的目标查询事件记录中获取第二结构化查询语句的语句关键词作为当前组待优化数据库表的查询日志漏洞信息中对应结构化查询语句的语句关键词进行指标优化。
第三种方式,根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,将当前组待优化数据库表的查询日志漏洞信息按照缓存空间时效指标的关联时效指标进行调整。获取查询日志漏洞信息包括的结构化查询语句的语句结构信息与目标数据库的查询语句约束信息和查询路径更新信息的第二查询映射关系。根据目标数据库在上一组的查询语句约束信息和查询路径更新信息,按照第二查询映射关系,确定调整后的当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句在上一组获取到的查询事件记录中对应的多个第二结构化查询语句。将多个第二结构化查询语句的语句关键词作为当前组待优化数据库表的查询日志漏洞信息中对应结构化查询语句的语句关键词进行指标优化,得到当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息。
在一些实施例中,第二查询映射关系可以通过上述所提到的两种量化描述关系来表示,因此在此不再赘述。
由于当前组待优化数据库表的查询日志漏洞信息所表征的业务指标信息与上一组获取到的查询事件记录所表征的业务指标信息可能存在互相影响,因此,根据目标数据库在上一组的查询语句约束信息和查询路径更新信息,按照上述第二查询映射关系,可以从上一组获取到的查询事件记录中,确定出与当前组待优化数据库表的查询日志漏洞信息所表征的业务指标信息存在互相影响的结构化查询语句,即多个第二结构化查询语句,然后,可以将多个第二结构化查询语句的语句关键词作为当前组待优化数据库表的查询日志漏洞信息中对应结构化查询语句的语句关键词进行指标优化,得到当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息。
其中,第一种方式至第三种方式中相关或者重复的内容可以相互参考,本申请对这些不再进行赘述。
步骤303:获取当前组之前的连续多组待优化数据库表的查询日志漏洞信息的动态优化指标信息,将获取的当前组之前的连续多组待优化数据库表的查询日志漏洞信息的动态优化指标信息,以及当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息进行基于业务需求层面的指标调整,得到当前组待优化数据库表的查询日志漏洞的优化指标调整结果。
由于每组待优化数据库表的查询日志漏洞信息的动态优化指标信息可以从上一组获取到的查询事件记录中确定得到,但是,每组待优化数据库表的查询日志漏洞信息中除动态优化指标信息之外的部分可能与之前不间断的多组查询日志漏洞信息的动态优化指标信息互相影响,因此,除了确定当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息之外,还可以将当前组之前的连续多组待优化数据库表的查询日志漏洞信息的动态优化指标信息,以及当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息进行基于业务需求层面的指标调整,得到当前组待优化数据库表的查询日志漏洞的优化指标调整结果。
其中,可以根据结构化查询语句的语句结构信息的互相影响关系,进行动态优化指标信息的基于业务需求层面的指标调整,使得当前组待优化数据库表的查询日志漏洞的优化指标调整结果所对应的数据库性能得到改善且确保与基于业务需求层面相关的数据库漏洞能够被修复。
步骤304:将查询日志漏洞的优化指标调整结果绑定在当前组待优化数据库表的查询日志漏洞信息中,得到已修复查询日志漏洞的目标数据库表。
举例而言,将优化指标调整结果绑定在当前组待优化数据库表的查询日志漏洞信息中,可以理解为基于优化指标调整结果实现对当前组待优化数据库表的查询日志漏洞信息所对应的数据库漏洞的修复,因此,绑定这一词还可以理解为通过优化指标调整结果替换与查询日志漏洞信息相关的脚本文件或者调整与查询日志漏洞信息相关的线程配置参数,从而实现对目标数据库的更新。可以理解,已修复查询日志漏洞的目标数据库表可以直接投入到生产环境中使用,由于上述整个优化流程是按照语句结构信息来进行数据结构、SQL以及索引层面的优化的,这样,可以减部分缺失据库优化的开销成本,提高当前组待优化数据库表的查询日志漏洞信息的漏洞升级效率,而且通过语句结构信息的方式可以高效稳定地进行查询日志漏洞的指标优化升级,不易出现优化升级过程中数据库状态异常的问题。
在一种可能的情况中,如果在当前组待优化数据库表的查询日志漏洞的优化指标调整结果中,除过上一组获取到的查询事件记录中确定得到的动态查询事件内容对应的结构化查询语句,以及从当前组之前的连续多组待优化数据库表的查询日志漏洞信息的动态优化指标信息基于业务需求层面的指标调整得到的动态查询事件内容对应的结构化查询语句之外,不存在其他结构化查询语句,那么可以确定当前组待优化数据库表的查询日志漏洞的优化指标调整结果对应于查询日志漏洞修复的完成。如果在当前组待优化数据库表的查询日志漏洞的优化指标调整结果中,除过上一组获取到的查询事件记录中确定得到的动态查询事件内容对应的结构化查询语句,以及从当前组之前的连续多组待优化数据库表的查询日志漏洞信息的动态优化指标信息基于业务需求层面的指标调整得到的动态查询事件内容对应的结构化查询语句之外,还存在其他结构化查询语句,则对这些其他结构化查询语句的语句关键词不做改变,也即是保留这些其他结构化查询语句的原来的语句关键词。此时,可以确定当前组待优化数据库表的查询日志漏洞的优化指标调整结果对应于查询日志漏洞修复的未完成。
基于上述描述,当前组待优化数据库表的查询日志漏洞的优化指标调整结果可能是能够完整匹配当前组的查询日志业务触发事件的查询事件记录。也可能是不能够完整匹配当前组的查询日志业务触发事件的查询事件记录。如果当前组待优化数据库表的查询日志漏洞的优化指标调整结果不能够完整匹配当前组的查询日志业务触发事件,那么在处理下一组待优化数据库表时,可以在下一组待优化数据库表中,继续根据上述步骤301-步骤303 生成下一组待优化数据库表的查询日志漏洞的优化指标调整结果。基于此,应当理解的是,随着当前组待优化数据库表的不断更新,通过步骤301-步骤303可以不断地对当前组待优化数据库表的查询日志漏洞信息进行漏洞修复,从而生成已修复查询日志漏洞的目标数据库表。
例如,目标报错信息error1为上一组待优化数据库表的查询日志漏洞信息,目标报错信息error2为当前组待优化数据库表的查询日志漏洞信息。其中,当前组待优化数据库表的查询日志漏洞信息中目标报错信息error6包括的多个结构化查询语句的语句关键词,可以根据当前组之前的连续多组待优化数据库表的查询日志漏洞信息的动态优化指标信息基于业务需求层面的指标调整得到。当前组待优化数据库表的查询日志漏洞信息中目标报错信息error3包括的多个结构化查询语句的语句关键词,可以根据上一组的全局查询事件记录Note1对应的目标查询事件记录中目标报错信息error3包括的多个结构化查询语句的语句关键词来确定。如此,即可将当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句关键词全部提取出来。此时,生成的当前组待优化数据库表的查询日志漏洞的优化指标调整结果是能够完整匹配当前组的查询日志业务触发事件的查询事件记录。也即是,可以生成已修复查询日志漏洞的目标数据库表。
又例如,目标报错信息error1为上一组待优化数据库表的查询日志漏洞信息,目标报错信息error2为当前组待优化数据库表的查询日志漏洞信息。其中,当前组待优化数据库表的查询日志漏洞信息中目标报错信息error7包括的多个结构化查询语句的语句关键词,可以根据当前组之前的连续多组待优化数据库表的查询日志漏洞信息的动态优化指标信息基于业务需求层面的指标调整得到,当前组待优化数据库表的查询日志漏洞信息中目标报错信息error3包括的多个结构化查询语句的语句关键词,可以根据上一组的全局查询事件记录Note1对应的目标查询事件记录中目标报错信息error3包括的多个结构化查询语句的语句关键词来确定。对于当前组待优化数据库表的查询日志漏洞信息中目标报错信息error8包括的结构化查询语句的语句关键词保留着原来的语句关键词。此时,生成的当前组待优化数据库表的查询日志漏洞的优化指标调整结果是不能够完整匹配当前组的查询日志业务触发事件的查询事件记录,此时,将当前组查询日志漏洞的优化指标调整结果绑定在当前组待优化数据库表的查询日志漏洞信息中。但是,在对下一组待优化数据库表进行处理时,可以继续根据上述步骤301-步骤303继续生成下一组待优化数据库表的查询日志漏洞的优化指标调整结果。例如,第N组是当前组,第N-1组是上一组,可以理解,随着时间的不断推进,查询日志漏洞信息在不断地被修复,从而在第N组时可以得到已修复查询日志漏洞对应的优化指标调整结果,进而得到已修复漏洞的目标数据库表。
值得注意的是,在一种可能的情况中,上一组待优化数据库表的查询日志漏洞信息的动态优化指标信息与当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息之间可能存在互相影响。这样容易导致当前组待优化数据库表的查询日志漏洞的优化指标调整结果存在偏差,因此,为了确保当前组待优化数据库表的查询日志漏洞的优化指标调整结果的准确性和可靠性更高,需要对偏差进行消除。其中,可以通过对优化指标调整结果进行查询业务测试的方式对偏差的消除,例如,对于一对互相影响的结构化查询语句,可以将这两个结构化查询语句的关联语句关键词确定为该互相影响的这一对结构化查询语句的语句关键词,从而消除偏差。
在本申请的一种可能的实现方式中,还可以通过对生成的当前组待优化数据库表的查询日志漏洞的优化指标调整结果的语句处理吞吐量、漏洞修复稳定性的兼容性参数等进行调整,以使目标数据库的运行效率更高。例如,可以将待优化数据库表的查询日志漏洞的优化指标调整结果的语句处理吞吐量调整为x条/s等,将漏洞修复稳定性的兼容性参数包括的三个索引指数的关键词分别调整为not null、not where ... or等。其中,索引指数是表示关键词的查询表达能力强弱的指数标准,也可以称为漏洞修复稳定性指数。其中,索引指数能够确保优化后的目标数据库能够快速响应大数据业务端的查询需求,从而在提高查询速率的前提下尽可能减少噪声查询结果。
另外,当获取到的目标数据库的业务状态的多个目标查询事件记录为延时查询事件记录时,在步骤303之后,还可以通过延时调整的方式将当前组待优化数据库表的查询日志漏洞的优化指标调整结果与当前组待优化数据库表进行时序融合,得到当前组延时的已修复查询日志漏洞的目标数据库表。
可以理解,在上述内容的基础上,在对数据库表进行漏洞修复之后,还可以进行并行的查询测试,也即,当目标数据库表上线之后,可以根据当前业务需求确定出测试业务需求,然后实现针对当前业务需求和测试业务需求的并行处理,这样可以在不影响数据库正常的业务办理的前提下进一步进行数据库的查漏补缺,为实现这一目的,在上述步骤的基础上,还可以包括以下内容:基于所述已修复查询日志漏洞的目标数据库表,对所述目标数据库进行基于目标业务需求响应的查询测试,并根据查询测试结果对所述目标数据库表进行调整。举例而言,基于目标业务需求响应的查询测试可以是基于测试业务需求进行的。进一步地,基于所述已修复查询日志漏洞的目标数据库表,对所述目标数据库进行基于目标业务需求响应的查询测试,并根据查询测试结果对所述目标数据库表进行调整,可以包括以下内容。
获取已激活查询业务状态中的用户侧业务数据和数据库侧业务数据;其中,所述已激活查询业务状态是基于针对目标数据库表的数据查询业务请求激活的。进一步地,所述获取已激活查询业务状态中的用户侧业务数据和数据库侧业务数据,包括:获取所述已激活查询业务状态中的至少两个用户侧事件内容和至少两个数据库侧事件内容;获取所述至少两个用户侧事件内容之间的用户侧事件内容相关度和用户侧事件内容影响度,获取所述至少两个数据库侧事件内容之间的数据库侧事件内容相关度和数据库侧事件内容影响度;根据所述用户侧事件内容相关度和所述用户侧事件内容影响度,对所述至少两个用户侧事件内容进行整理,得到所述已激活查询业务状态中的用户侧业务数据;一个用户侧业务数据包括至少一个用户侧事件内容;根据所述数据库侧事件内容相关度和所述数据库侧事件内容影响度,对所述至少两个数据库侧事件内容进行整理,得到所述已激活查询业务状态中的数据库侧业务数据;一个数据库侧业务数据包括至少一个数据库侧事件内容。
更进一步地,所述基于所述已激活查询业务状态中的用户侧业务数据和数据库侧业务数据之间的业务数据响应匹配度,对所述已激活查询业务状态中的用户侧业务数据和数据库侧业务数据进行查询索引配准,得到业务数据配准结果,包括:将所述已激活查询业务状态中的数据库侧业务数据确定为关联数据库侧业务数据,将所述已激活查询业务状态中的用户侧业务数据确定为关联用户侧业务数据;所述关联数据库侧业务数据中的数据库侧事件内容是从针对所述已激活查询业务状态的目标监测事件内容中所确定的;获取所述目标监测事件内容中的用户侧事件内容;将所述目标监测事件内容中的用户侧事件内容与所述关联用户侧业务数据中的用户侧事件内容之间的事件内容相关度,确定为所述关联数据库侧业务数据与所述关联用户侧业务数据之间的所述业务数据响应匹配度;当所述业务数据响应匹配度大于或等于响应匹配度阈值时,对所述关联数据库侧业务数据和所述关联用户侧业务数据进行查询索引配准,得到所述业务数据配准结果。
基于所述已激活查询业务状态中的用户侧业务数据和数据库侧业务数据之间的业务数据响应匹配度,对所述已激活查询业务状态中的用户侧业务数据和数据库侧业务数据进行查询索引配准,得到业务数据配准结果。将查询索引配准存在异常的数据库侧业务数据确定为待处理数据库侧业务数据,根据所述业务数据配准结果中的数据库侧业务数据与所述待处理数据库侧业务数据之间的业务数据相关度,确定与所述待处理数据库侧业务数据相匹配的查询语句冗余信息。在本实施例中,所述待处理数据库侧业务数据包括所述已激活查询业务状态中的第一数据库侧事件内容;所述业务数据配准结果的数目为至少两个;每个业务数据配准结果中的数据库侧业务数据分别包括所述已激活查询业务状态中的第二数据库侧事件内容,基于此,所述根据所述业务数据配准结果中的数据库侧业务数据与所述待处理数据库侧业务数据之间的业务数据相关度,确定与所述待处理数据库侧业务数据相匹配的查询语句冗余信息,包括:根据所述第一数据库侧事件内容,获取所述待处理数据库侧业务数据的第一业务数据特征标签;根据所述每个业务数据配准结果包括的第二数据库侧事件内容,分别获取所述每个业务数据配准结果中的数据库侧业务数据的第二业务数据特征标签;获取所述第一业务数据特征标签分别与所述每个业务数据配准结果对应的第二业务数据特征标签之间的标签影响度;根据所述每个业务数据配准结果所属的标签影响度,确定所述每个业务数据配准结果中的数据库侧业务数据分别与所述待处理数据库侧业务数据之间的业务数据相关度;当目标业务数据配准结果的数目大于第一设定数目且小于或等于第二设定数目时,将所述目标业务数据配准结果中的用户侧业务数据所包含的查询语句冗余信息,确定为与所述待处理数据库侧业务数据相匹配的查询语句冗余信息;所述目标业务数据配准结果,指所属的业务数据相关度大于或等于业务数据相关度阈值的业务数据配准结果。
进一步地,在上述内容的基础上,所述第一数据库侧事件内容的事件内容数目为至少两个;所述根据所述第一数据库侧事件内容获取所述待处理数据库侧业务数据的第一业务数据特征标签,包括:获取至少两个第一数据库侧事件内容中的每个第一数据库侧事件内容分别对应的事件内容特征标签;根据所述每个第一数据库侧事件内容分别对应的事件内容特征标签,获取所述至少两个第一数据库侧事件内容对应的第一全局特征标签;将所述第一全局特征标签,确定为所述第一业务数据特征标签。
对与所述待处理数据库侧业务数据相匹配的查询语句冗余信息和所述待处理数据库侧业务数据进行查询索引配准,得到冗余信息配准结果。根据所述冗余信息配准结果和所述业务数据配准结果,确定所述已激活查询业务状态中的全局索引扫描结果和所述全局索引扫描结果对应的查询语句冗余信息。通过所述全局索引扫描结果和所述全局索引扫描结果对应的查询语句冗余信息,得到所述查询测试结果,若所述查询测试结果表征所述已激活查询业务状态对应的性能损耗指标达到预设指标,则根据所述性能损耗指标对所述目标数据库表对应的表结构进行调整。
举例而言,性能损耗指标可以是数据库的查询耗时、查询精度或者运行垃圾回收量(在处理查询语句过程中产生的冗余数据)。进一步地,在通过上述性能损耗指标对所述目标数据库表对应的表结构进行调整时,还能够考虑全局索引扫描结果以及查询语句冗余信息,这样,能够将一些识别度较差的查询语句所造成的全局索引扫描情况考虑在内,从而基于全局索引扫描情况实现对目标数据库表的表结构的调整。这样,在对表结构调整之后,能够尽可能实现对查询语句的查询需求的高效、精准分析,从而避免在进行数据查询时出现较多的无效查询,也即尽可能减少对数据库表遍历的次数。
在本申请实施例中,由于时间顺序层面上不间断的两组查询事件记录对应的业务指标信息可能存在互相影响,也即是,当前组待优化数据库表的查询日志漏洞信息对应的业务指标信息与上一组待优化数据库表对应的业务指标信息可能存在互相影响,所以根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及查询日志漏洞信息包括的结构化查询语句的语句结构信息与上一组待优化数据库表包括的结构化查询语句的语句结构信息之间的对应关系,能够从上一组待优化数据库表中确定出当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息。之后,将时间顺序层面上不间断的多组待优化数据库表的查询日志漏洞信息的动态优化指标信息进行基于业务需求层面的指标调整,并进行优化指标调整结果的绑定,即可得到已升级的当前组待优化数据库表的查询日志漏洞信息,从而得到得到已修复查询日志漏洞的目标数据库表。由于本申请实施例无需进行数据库硬件升级以优化数据库,而是按照语句结构信息来进行数据结构、SQL以及索引层面的优化的,这样,可以减部分缺失据库优化的开销成本,提高当前组待优化数据库表的查询日志漏洞信息的漏洞升级效率,而且通过语句结构信息的方式可以高效稳定地进行查询日志漏洞的指标优化升级,不易出现优化升级过程中数据库状态异常的问题。
其次,针对上述为满足实时大数据业务需求的数据库优化方法,本发明实施例还提出了一种示例性的为满足实时大数据业务需求的数据库优化装置,如图2所示,为满足实时大数据业务需求的数据库优化装置200可以包括以下的功能模块。
语句信息确定模块210,用于确定当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息。
数据库优化模块220,用于根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及目标数据库的业务状态,确定当前组待优化数据库表的查询日志漏洞的优化指标调整结果,并得到与当前组待优化数据库表相对应的已修复查询日志漏洞的目标数据库表。
可以理解,关于上述功能模块的说明可以参阅对图1所示的方法的说明,在此不再说明。
然后,基于上述的方法实施例和装置实施例,本发明实施例还提出了一种***实施例,也即为满足实时大数据业务需求的数据库优化***,请结合参阅图3,为满足实时大数据业务需求的数据库优化***30可以包括云服务器10和目标数据库20。其中,云服务器10和目标数据库20通信用以实施上述方法,可以理解,目标数据库20可以是需要进行优化的数据库,进一步地,为满足实时大数据业务需求的数据库优化***30的功能性描述如下。
一种为满足实时大数据业务需求的数据库优化***,包括互相之间通信的云服务器和目标数据库;
所述云服务器用于:确定当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息;根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及目标数据库的业务状态,确定当前组待优化数据库表的查询日志漏洞的优化指标调整结果,并得到与当前组待优化数据库表相对应的已修复查询日志漏洞的目标数据库表;
所述目标数据库用于:根据所述目标数据库表进行查询业务处理。
进一步地,请结合参阅图4,云服务器10可以包括处理引擎110、网络模块120和存储器130,处理引擎110和存储器130通过网络模块120通信。
处理引擎110可以处理相关的信息和/或数据以执行本申请中描述的一个或多个功能。例如,在一些实施例中,处理引擎110可以包括至少一个处理引擎(例如,单核处理引擎或多核处理器)。仅作为示例,处理引擎110可以包括中央处理单元(Central ProcessingUnit,CPU)、专用集成电路(Application-Specific Integrated Circuit,ASIC)、专用指令集处理器(Application-Specific Instruction-set Processor,ASIP)、图形处理单元(Graphics Processing Unit,GPU)、物理处理单元(Physics Processing Unit,PPU)、数字信号处理器(Digital Signal Processor,DSP)、现场可编程门阵列(Field ProgrammableGate Array,FPGA)、可编程逻辑器件(Programmable Logic Device,PLD)、控制器、微控制器单元、精简指令集计算机(Reduced Instruction-Set Computer,RISC)、微处理器等或其任意组合。
网络模块120可以促进信息和/或数据的交换。在一些实施例中,网络模块120可以是任何类型的有线或无线网络或其组合。仅作为示例,网络模块120可以包括缆线网络、有线网络、光纤网络、电信网络、内部网络、互联网、局域网络(Local Area Network,LAN)、广域网(Wide Area Network,WAN)、无线局域网络(Wireless Local Area Network,WLAN)、城域网(Metropolitan Area Network,MAN)、公用电话交换网(Public Telephone SwitchedNetwork,PSTN)、蓝牙网络、无线个域网络、近场通讯(Near Field Communication,NFC)网络等或上述举例的任意组合。在一些实施例中,网络模块120可以包括至少一个网络接入点。例如,网络模块120可以包括有线或无线网路接入点,如基站和/或网路接入点。
存储器130可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器130用于存储程序,所述处理引擎110在接收到执行指令后,执行所述程序。
可以理解,图4所示的结构仅为示意,云服务器10还可包括比图4中所示更多或者更少的组件,或者具有与图4所示不同的配置。图4中所示的各组件可以采用硬件、软件或其组合实现。
本发明实施例公开的上述内容对于本领域技术人员而言是清楚完整的。应当理解,本领域技术人员基于上述公开的内容对未作解释的技术术语进行推导和分析的过程是基于本申请所记载的内容进行的,因此上述内容并不是对整体方案的创造性的评判。
应当理解,上述所示的***及其模块可以利用各种方式来实现。例如,在一些实施例中,***及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行***,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和***可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本申请的***及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本申请的限定。虽然此处并没有明确说明,本领域技术人员可能会对本申请进行各种修改、改进和修正。该类修改、改进和修正在本申请中被建议,所以该类修改、改进、修正仍属于本申请示范实施例的精神和范围。
同时,本申请使用了特定词语来描述本申请的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本申请的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“***”。此外,本申请的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行***、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质,或任何上述介质的组合。
本申请各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、Visual Basic、Fortran 2003、Perl、COBOL 2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
最后,应当理解的是,本申请中所述实施例仅用以说明本申请实施例的原则。其他的变形也可能属于本申请的范围。因此,作为示例而非限制,本申请实施例的替代配置可视为与本申请的教导一致。相应地,本申请的实施例不仅限于本申请明确介绍和描述的实施例。
Claims (10)
1.一种为满足实时大数据业务需求的数据库优化方法,其特征在于,应用于所述云服务器,所述方法包括:
确定当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息;
根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及目标数据库的业务状态,确定当前组待优化数据库表的查询日志漏洞的优化指标调整结果,并得到与当前组待优化数据库表相对应的已修复查询日志漏洞的目标数据库表。
2.如权利要求1所述的方法,其特征在于,根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及目标数据库的业务状态,确定当前组待优化数据库表的查询日志漏洞的优化指标调整结果,并得到与当前组待优化数据库表相对应的已修复查询日志漏洞的目标数据库表,包括:
根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及查询日志漏洞信息包括的结构化查询语句的语句结构信息与上一组针对目标数据库的业务状态获取到的查询事件记录包括的结构化查询语句的语句结构信息之间的对应关系,从上一组获取到的查询事件记录中确定当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息;
获取当前组之前的连续多组待优化数据库表的查询日志漏洞信息的动态优化指标信息,将获取的当前组之前的连续多组待优化数据库表的查询日志漏洞信息的动态优化指标信息,以及当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息进行基于业务需求层面的指标调整,得到当前组待优化数据库表的查询日志漏洞的优化指标调整结果;
将所述查询日志漏洞的优化指标调整结果绑定在所述当前组待优化数据库表的查询日志漏洞信息中,得到已修复查询日志漏洞的目标数据库表。
3.如权利要求2所述的方法,其特征在于,所述确定当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,包括:
获取查询日志漏洞信息包括的结构化查询语句的语句结构信息与目标数据库的查询语句约束信息和查询路径更新信息的第一查询映射关系;
根据所述目标数据库在上一组的查询语句约束信息和查询路径更新信息,以及上一组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,按照所述第一查询映射关系,确定当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息。
4.如权利要求2所述的方法,其特征在于,所述确定当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,包括:
获取所述目标数据库的数据调用记录信息,以及与所述目标数据库的业务状态匹配的业务执行端的业务交互内容;
根据所述目标数据库的数据调用记录信息和与所述目标数据库的业务状态匹配的业务执行端的业务交互内容,确定针对所述目标数据库的待优化数据库表的查询日志漏洞信息的数据调用记录信息;
通过针对所述目标数据库的待优化数据库表的查询日志漏洞信息的数据调用记录信息,确定当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息。
5.如权利要求2-4任一所述的方法,其特征在于,所述根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及查询日志漏洞信息包括的结构化查询语句的语句结构信息与上一组针对目标数据库的业务状态获取到的查询事件记录包括的结构化查询语句的语句结构信息之间的对应关系,从上一组获取到的查询事件记录中确定当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息,包括:
根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,从上一组待优化数据库表中确定出多个第一结构化查询语句;
将所述多个第一结构化查询语句的语句结构信息,按照缓存空间时效指标的关联时效指标进行调整,得到所述多个第一结构化查询语句在上一组获取到的查询事件记录中对应的第二结构化查询语句,所述缓存空间时效指标用于指示获取到的查询事件记录更新为全局查询事件记录的关系;
将所述多个第二结构化查询语句的语句关键词作为当前组待优化数据库表的查询日志漏洞信息中对应结构化查询语句的语句关键词进行指标优化,得到当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息。
6.如权利要求2-4任一所述的方法,其特征在于,所述根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及查询日志漏洞信息包括的结构化查询语句的语句结构信息与上一组针对目标数据库的业务状态获取到的查询事件记录包括的结构化查询语句的语句结构信息之间的对应关系,从上一组获取到的查询事件记录中确定当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息,包括:
根据所述目标数据库在当前组的数据调用路径,从上一组的多个全局查询事件记录中选择至少一个全局查询事件记录,所述多个全局查询事件记录为上一组针对所述目标数据库的业务状态获取到的多个查询事件记录调整得到的;
根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,从选择的至少一个全局查询事件记录中确定出多个第一结构化查询语句;
将所述多个第一结构化查询语句的语句结构信息,按照缓存空间时效指标的关联时效指标进行调整,得到所述多个第一结构化查询语句在选择的至少一个全局查询事件记录对应的目标查询事件记录中对应的第二结构化查询语句的语句结构信息,所述缓存空间时效指标用于指示获取到的查询事件记录调整为全局查询事件记录的关系;
将所述多个第二结构化查询语句的语句关键词作为当前组待优化数据库表的查询日志漏洞信息中对应结构化查询语句的语句关键词进行指标优化,得到当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息。
7.如权利要求2-4任一所述的方法,其特征在于,所述根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,以及查询日志漏洞信息包括的结构化查询语句的语句结构信息与上一组针对目标数据库的业务状态获取到的查询事件记录包括的结构化查询语句的语句结构信息之间的对应关系,从上一组获取到的查询事件记录中确定当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息,包括:
根据当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句的语句结构信息,将当前组待优化数据库表的查询日志漏洞信息按照缓存空间时效指标的关联时效指标进行调整;
获取查询日志漏洞信息包括的结构化查询语句的语句结构信息与目标数据库的查询语句约束信息和查询路径更新信息的第二查询映射关系;
根据所述目标数据库在上一组的查询语句约束信息和查询路径更新信息,按照所述第二查询映射关系,确定调整后的当前组待优化数据库表的查询日志漏洞信息包括的结构化查询语句在上一组获取到的查询事件记录中对应的多个第二结构化查询语句;
将所述多个第二结构化查询语句的语句关键词作为当前组待优化数据库表的查询日志漏洞信息中对应结构化查询语句的语句关键词进行指标优化,得到当前组待优化数据库表的查询日志漏洞信息的动态优化指标信息。
8.如权利要求1所述的方法,其特征在于,所述方法还包括:
基于所述已修复查询日志漏洞的目标数据库表,对所述目标数据库进行基于目标业务需求响应的查询测试,并根据查询测试结果对所述目标数据库表进行调整。
9.如权利要求8所述的方法,其特征在于,基于所述已修复查询日志漏洞的目标数据库表,对所述目标数据库进行基于目标业务需求响应的查询测试,并根据查询测试结果对所述目标数据库表进行调整,包括:
获取已激活查询业务状态中的用户侧业务数据和数据库侧业务数据;其中,所述已激活查询业务状态是基于针对目标数据库表的数据查询业务请求激活的;
基于所述已激活查询业务状态中的用户侧业务数据和数据库侧业务数据之间的业务数据响应匹配度,对所述已激活查询业务状态中的用户侧业务数据和数据库侧业务数据进行查询索引配准,得到业务数据配准结果;
将查询索引配准存在异常的数据库侧业务数据确定为待处理数据库侧业务数据,根据所述业务数据配准结果中的数据库侧业务数据与所述待处理数据库侧业务数据之间的业务数据相关度,确定与所述待处理数据库侧业务数据相匹配的查询语句冗余信息;
对与所述待处理数据库侧业务数据相匹配的查询语句冗余信息和所述待处理数据库侧业务数据进行查询索引配准,得到冗余信息配准结果;
根据所述冗余信息配准结果和所述业务数据配准结果,确定所述已激活查询业务状态中的全局索引扫描结果和所述全局索引扫描结果对应的查询语句冗余信息;
通过所述全局索引扫描结果和所述全局索引扫描结果对应的查询语句冗余信息,得到所述查询测试结果,若所述查询测试结果表征所述已激活查询业务状态对应的性能损耗指标达到预设指标,则根据所述性能损耗指标对所述目标数据库表对应的表结构进行调整;
其中,所述获取已激活查询业务状态中的用户侧业务数据和数据库侧业务数据,包括:
获取所述已激活查询业务状态中的至少两个用户侧事件内容和至少两个数据库侧事件内容;
获取所述至少两个用户侧事件内容之间的用户侧事件内容相关度和用户侧事件内容影响度,获取所述至少两个数据库侧事件内容之间的数据库侧事件内容相关度和数据库侧事件内容影响度;
根据所述用户侧事件内容相关度和所述用户侧事件内容影响度,对所述至少两个用户侧事件内容进行整理,得到所述已激活查询业务状态中的用户侧业务数据;一个用户侧业务数据包括至少一个用户侧事件内容;
根据所述数据库侧事件内容相关度和所述数据库侧事件内容影响度,对所述至少两个数据库侧事件内容进行整理,得到所述已激活查询业务状态中的数据库侧业务数据;一个数据库侧业务数据包括至少一个数据库侧事件内容;
其中,所述基于所述已激活查询业务状态中的用户侧业务数据和数据库侧业务数据之间的业务数据响应匹配度,对所述已激活查询业务状态中的用户侧业务数据和数据库侧业务数据进行查询索引配准,得到业务数据配准结果,包括:
将所述已激活查询业务状态中的数据库侧业务数据确定为关联数据库侧业务数据,将所述已激活查询业务状态中的用户侧业务数据确定为关联用户侧业务数据;所述关联数据库侧业务数据中的数据库侧事件内容是从针对所述已激活查询业务状态的目标监测事件内容中所确定的;
获取所述目标监测事件内容中的用户侧事件内容;将所述目标监测事件内容中的用户侧事件内容与所述关联用户侧业务数据中的用户侧事件内容之间的事件内容相关度,确定为所述关联数据库侧业务数据与所述关联用户侧业务数据之间的所述业务数据响应匹配度;
当所述业务数据响应匹配度大于或等于响应匹配度阈值时,对所述关联数据库侧业务数据和所述关联用户侧业务数据进行查询索引配准,得到所述业务数据配准结果。
10.一种云服务器,其特征在于,包括处理引擎、网络模块和存储器;所述处理引擎和所述存储器通过所述网络模块通信,所述处理引擎从所述存储器中读取计算机程序并运行,以执行权利要求1-9任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110129984.3A CN112783867A (zh) | 2021-01-29 | 2021-01-29 | 为满足实时大数据业务需求的数据库优化方法及云服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110129984.3A CN112783867A (zh) | 2021-01-29 | 2021-01-29 | 为满足实时大数据业务需求的数据库优化方法及云服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112783867A true CN112783867A (zh) | 2021-05-11 |
Family
ID=75760020
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110129984.3A Withdrawn CN112783867A (zh) | 2021-01-29 | 2021-01-29 | 为满足实时大数据业务需求的数据库优化方法及云服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112783867A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114236276A (zh) * | 2021-12-07 | 2022-03-25 | 安徽中家智锐科技有限公司 | 一种电器远程测试的方法和*** |
CN114840853A (zh) * | 2021-06-16 | 2022-08-02 | 杨永飞 | 基于大数据的数字化业务分析方法及云服务器 |
CN116226154A (zh) * | 2023-05-05 | 2023-06-06 | 北京睿企信息科技有限公司 | 一种集群数据库的升级*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107957942A (zh) * | 2017-11-07 | 2018-04-24 | 中国平安人寿保险股份有限公司 | 一种sql脚本的故障修复方法及其终端 |
CN108255703A (zh) * | 2017-11-07 | 2018-07-06 | 中国平安人寿保险股份有限公司 | 一种sql脚本的故障修复方法及其终端 |
CN109753490A (zh) * | 2018-12-13 | 2019-05-14 | 深圳壹账通智能科技有限公司 | 基于漏洞修复的数据库优化方法、***、设备及介质 |
-
2021
- 2021-01-29 CN CN202110129984.3A patent/CN112783867A/zh not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107957942A (zh) * | 2017-11-07 | 2018-04-24 | 中国平安人寿保险股份有限公司 | 一种sql脚本的故障修复方法及其终端 |
CN108255703A (zh) * | 2017-11-07 | 2018-07-06 | 中国平安人寿保险股份有限公司 | 一种sql脚本的故障修复方法及其终端 |
CN109753490A (zh) * | 2018-12-13 | 2019-05-14 | 深圳壹账通智能科技有限公司 | 基于漏洞修复的数据库优化方法、***、设备及介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114840853A (zh) * | 2021-06-16 | 2022-08-02 | 杨永飞 | 基于大数据的数字化业务分析方法及云服务器 |
CN114236276A (zh) * | 2021-12-07 | 2022-03-25 | 安徽中家智锐科技有限公司 | 一种电器远程测试的方法和*** |
CN114236276B (zh) * | 2021-12-07 | 2022-10-04 | 安徽中家智锐科技有限公司 | 一种电器远程测试的方法和*** |
CN116226154A (zh) * | 2023-05-05 | 2023-06-06 | 北京睿企信息科技有限公司 | 一种集群数据库的升级*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11675691B2 (en) | System and method for performing automated API tests | |
CN111949541B (zh) | 多源数据库语句检查方法及装置 | |
CN107665171B (zh) | 自动回归测试方法及装置 | |
US9558230B2 (en) | Data quality assessment | |
KR101755365B1 (ko) | 레코드 포맷 정보의 관리 | |
CN112783867A (zh) | 为满足实时大数据业务需求的数据库优化方法及云服务器 | |
US8065323B2 (en) | Offline validation of data in a database system for foreign key constraints | |
US6185583B1 (en) | Parallel rule-based processing of forms | |
CN111258990B (zh) | 索引库数据迁移方法、装置、设备及存储介质 | |
US9195730B2 (en) | Verifying correctness of a database system via extended access paths | |
CN113535773B (zh) | 数据库优化方法、数据库优化装置、电子设备和存储介质 | |
CN113901083A (zh) | 基于多解析器的异构数据源操作资源解析定位方法和设备 | |
CN110851514B (zh) | 基于flink的etl处理方法 | |
US6853963B1 (en) | Analyzing an extended finite state machine system model | |
CN112650526B (zh) | 版本一致性的检测方法、装置、电子设备和介质 | |
CN113672233B (zh) | 一种基于Redfish的服务器带外管理方法、装置及设备 | |
WO2016012903A1 (en) | A system for querying heterogeneous data sources and a method thereof | |
CN112817931A (zh) | 一种增量版本文件的生成方法及装置 | |
CN111881128B (zh) | 大数据回归验证方法及大数据回归验证装置 | |
CN113434409B (zh) | 微服务测试方法及装置 | |
CN116362230A (zh) | 参数校验方法、装置、计算机设备可存储介质 | |
CN116226168A (zh) | 一种用于宽表数据验证的方法及*** | |
CN117149872A (zh) | 数据血缘分析方法、介质、装置及计算设备 | |
CN117762937A (zh) | Sql语句优化方法、装置、存储介质及计算机设备 | |
CN117609042A (zh) | 基于MyBatis框架的接口映射文件测试方法、装置和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210511 |