数据库请求识别、异常检测方法、装置、设备及介质制造方法及图纸

技术编号:29789832 阅读:10 留言:0更新日期:2021-08-24 18:08
本说明书提供一种数据库请求识别、异常检测方法、装置、设备及介质,本说明书实施例方案中,可以获取设定时间段内的数据库请求集;确定所述设定时间段内的数据库请求集中各数据库请求的响应时长的概率分布后,根据所述概率分布确定目标数据库请求,所述目标数据库请求包括:响应时长大于第一设定阈值且分布概率低于设定概率阈值的数据库请求;通过识别出的目标数据库请求,可以准确地实现数据库运行异常的原因定位。

【技术实现步骤摘要】
数据库请求识别、异常检测方法、装置、设备及介质
本说明书涉及涉及数据库
,尤其涉及数据库请求识别、异常检测方法、装置、设备及介质。
技术介绍
随着云数据库市场的增长,识别慢数据库请求(慢SQL,StructuredQueryLanguage)对于维护服务的稳定性至关重要。一些数据库系统会自动记录数据请求SQL的详细处理信息,这些SQL的执行时间/响应时间如果超过设定阈值,即为慢SQL。如何识别导致慢SQL的原因成为亟待解决的技术问题。
技术实现思路
为克服相关技术中存在的问题,本说明书提供了数据库请求识别、异常检测方法、装置、设备及介质。根据本说明书实施例的第一方面,提供一种数据库异常检测方法,所述方法包括:获取设定时间段内的数据库请求集;确定所述设定时间段内的数据库请求集中各数据库请求的响应时长的概率分布后,根据所述概率分布确定目标数据库请求,所述目标数据库请求包括:响应时长大于第一设定阈值且分布概率低于设定概率阈值的数据库请求。根据本说明书实施例的第二方面,提供一种数据库异常检测方法,所述方法包括:获取设定时间段内的数据库请求集;确定所述设定时间段内的数据库请求集中各数据库请求的响应时长的概率分布后,根据所述概率分布确定目标数据库请求,所述目标数据库请求包括:响应时长大于第一设定阈值且分布概率低于设定概率阈值的数据库请求;识别所述目标数据库请求所属的数据库异常原因类别。根据本说明书实施例的第三方面,提供一种数据库异常检测模型的获取方法,包括:获取历史目标数据库请求集,以及所述历史目标数据库请求集中各历史目标数据库请求对应的多个历史关键异常性能指标;利用历史关键异常性能指标的相似度,将所述历史目标数据库请求集中各历史目标数据库请求进行聚类分析,获得多个聚类类别结果;所述聚类类别结果包括:至少一个历史目标数据库请求,所述历史目标数据库请求对应的历史关键异常性能指标及异常特征,每种聚类类别对应一种数据库异常原因类别;利用所述多个聚类类别结果训练机器学习模型;其中,训练得到的机器学习模型用于识别目标数据库请求所属的数据库异常原因类别。根据本说明书实施例的第四方面,提供一种数据库请求识别装置,所述装置包括:请求获取模块,用于:获取设定时间段内的数据库请求集;请求识别模块,用于:确定所述设定时间段内的数据库请求集中各数据库请求的响应时长的概率分布后,根据所述概率分布确定目标数据库请求,所述目标数据库请求包括:响应时长大于第一设定阈值且分布概率低于设定概率阈值的数据库请求。根据本说明书实施例的第五方面,提供一种数据库异常检测装置,所述装置包括:请求获取模块,用于:获取设定时间段内的数据库请求集;请求识别模块,用于:确定所述设定时间段内的数据库请求集中各数据库请求的响应时长的概率分布后,根据所述概率分布确定目标数据库请求,所述目标数据库请求包括:响应时长大于第一设定阈值且分布概率低于设定概率阈值的数据库请求;原因识别模块,用于:识别所述目标数据库请求所属的数据库异常原因类别。根据本说明书实施例的第六方面,提供一种数据库异常检测模型的获取装置,包括:获取模块,用于:获取历史目标数据库请求集,以及所述历史目标数据库请求集中各历史目标数据库请求对应的多个历史关键异常性能指标;聚类模块,用于:利用历史关键异常性能指标的相似度,将所述历史目标数据库请求集中各历史目标数据库请求进行聚类分析,获得多个聚类类别结果;所述聚类类别结果包括:至少一个历史目标数据库请求,所述历史目标数据库请求对应的历史关键异常性能指标及异常特征,每种聚类类别对应一种数据库异常原因类别;训练模块,用于:利用所述多个聚类类别结果训练机器学习模型;其中,训练得到的机器学习模型用于识别目标数据库请求所属的数据库异常原因类别。根据本说明书实施例的第七方面,提供一种系统,所述系统包括:数据库异常检测端、数据库服务端和用户请求端;所述用户请求端用于:向所述数据库服务端发送数据库请求;所述数据库服务端用于:响应所述数据库请求;所述数据库异常检测端用于:获取设定时间段内的数据库请求集;确定所述设定时间段内的数据库请求集中各数据库请求的响应时长的概率分布后,根据所述概率分布确定目标数据库请求,所述目标数据库请求包括:响应时长大于第一设定阈值且分布概率低于设定概率阈值的数据库请求识别所述目标数据库请求所属的数据库异常原因类别。根据本说明书实施例的第八方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现前述数据库请求识别方法、数据库异常检测方法或数据库异常检测模型的获取方法。根据本说明书实施例的第九方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令使所述计算机执行前述数据库请求识别方法、数据库异常检测方法或数据库异常检测模型的获取方法。根据本说明书实施例的第十方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现前述数据库请求识别方法、数据库异常检测方法或数据库异常检测模型的获取方法。根据本说明书实施例的第十一方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令使所述计算机执行前述数据库请求识别方法、数据库异常检测方法或数据库异常检测模型的获取方法。本说明书的实施例提供的技术方案可以包括以下有益效果:本说明书实施例中,能够众多数据库请求中识别目标数据库请求,该目标数据库请求响应时长大于第一设定阈值且分布概率低于设定概率阈值,目标数据库请求表征了数据库运行状态异常,因此可以用于识别数据库异常原因类别,可以确定导致慢数据库请求出现的根因,以对数据库系统进行优化。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本说明书的实施例,并与说明书一起用于解释本说明书的原理。图1A是本说明书根据一示例性实施例示出的一种数据库请求识别方法的流程图。图1B是本说明书根据一示例性实施例示出的正常的SQL、iSQ和一般慢SQL的概率分布对比示意图。图2A是本说明书根据一示例性实施例示出的一种数据库异常检测方法的流程图。图2B是本说明书根据一示例性实施例示出的两种时序特征上出现尖峰的示意图。图2C是本说明书根据一示例性实施例示出的两种时序特征上出现均值上移或均值下移的示意图。图2D是本说明书根据一示例性实施例示出的一种数据库异常检测模型的获取方法的流程图。图2E是本说明书根据一示例性实施例示出的iSQ1与iSQ2的相似度比对示意图。图3是本说本文档来自技高网...

【技术保护点】
1.一种数据库请求识别方法,所述方法包括:/n获取设定时间段内的数据库请求集;/n确定所述设定时间段内的数据库请求集中各数据库请求的响应时长的概率分布后,根据所述概率分布确定目标数据库请求,所述目标数据库请求包括:响应时长大于第一设定阈值且分布概率低于设定概率阈值的数据库请求。/n

【技术特征摘要】
20200815 CN 20201082188951.一种数据库请求识别方法,所述方法包括:
获取设定时间段内的数据库请求集;
确定所述设定时间段内的数据库请求集中各数据库请求的响应时长的概率分布后,根据所述概率分布确定目标数据库请求,所述目标数据库请求包括:响应时长大于第一设定阈值且分布概率低于设定概率阈值的数据库请求。


2.根据权利要求1所述的方法,所述目标数据库请求包括:由数据库运行状态异常导致的慢数据库请求,所述慢数据库请求的响应时长大于第二设定阈值。


3.根据权利要求1所述的方法,所述数据库请求集为:包括多个慢数据库请求的数据库请求集,所述慢数据库请求的响应时长大于第二设定阈值。


4.根据权利要求2或3所述的方法,所述第一设定阈值大于或等于第二设定阈值。


5.根据权利要求1所述的方法,所述慢数据库请求集中的慢数据库请求通过如下方式确定:
向数据库设备发送探活数据库请求后,监测所述数据库设备对所述探活数据库请求的响应时间;
若所述探活数据库请求的响应时间大于第一设定阈值,确定所述探活数据库请求为所述慢数据库请求。


6.一种数据库异常检测方法,所述方法包括:
获取利用权利要求1至5任意一项数据库请求识别方法识别出的目标数据库请求;
识别所述目标数据库请求所属的数据库异常原因类别。


7.根据权利要求6所述的方法,所述识别所述目标数据库请求所属的数据库异常原因类别,包括:
获取数据库运行环境的性能指标数据;
将所述目标数据库请求及所述性能指标数据输入至机器学习模型,利用所述机器学习模型确定所述目标数据库请求所属的数据库异常原因类别。


8.根据权利要求7所述的方法,所述机器学习模型用于:从所述性能指标数据识别出至少一个性能指标,以及识别每个所述性能指标是否具有至少一个异常特征后,确定具有至少一个异常特征的性能指标所属的聚类类别,将确定的聚类类别对应的与数据库异常原因类别确定为所述目标数据库请求的数据库异常原因类别。


9.根据权利要求7所述的方法,所述机器学习模型通过如下方式训练得到:
获取历史目标数据库请求集,以及所述历史目标数据库请求集中各历史目标数据库请求对应的多个历史关键异常性能指标;
利用历史关键异常性能指标的相似度,将所述历史目标数据库请求集中各历史目标数据库请求进行聚类分析,获得多个聚类类别结果;所述聚类类别结果包括:至少一个历史目标数据库请求,所述历史目标数据库请求对应的历史关键异常性能指标及异常特征,每种聚类类别对应一种数据库异常原因类别;
利用多个聚类类别结果训练机器学习模型。


10.根据权利要求8或9所述的方法,所述性能指标数据为时间序列数据,所述异常特征是通过分析所述性能指标在时序上的波动确定的。


11.根据权利要求9所述的方法,所述利用历史关键异常性能指标的相似度,将所述历史目标数据库请求集中各历史目标数据库请求进行聚类分析,获得多个聚类类别,包括:
将所述历史目标数据库请求集转换为字典,所述字典中包含有对各历史目标数据库请求转换得到的字符串,所述字符串包括历史目标数据库请求对应的多个历史关键异常性能指标构成的序列;
利用字符串之间的相似度确定历史目标数据库请求之间的相似度,根据历史目标数据库请求之间的相似度进行聚类分析,获得多个聚类类别。


12.根据权利要求9所述的方法,所述多个历史关键异常性能指标,通过如下方式获得:
获取数据库运行环境的历史监控数据,利用所述历史监控数据中计算多个历史初始异常性能指标,将所述多个历史初始异常性能指标进行关联分析,删除...

【专利技术属性】
技术研发人员:殷征陈旭李广望李飞飞
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

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

1