一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

服务异常检测方法和装置、设备、存储介质与流程

2022-04-16 15:41:55 来源:中国专利 TAG:


1.本技术涉及智能运维技术领域,尤其涉及一种服务异常检测方法和装置、设备、存储介质。


背景技术:

2.近年来,随着微服务技术的快速发展,系统软件的规模变大、变更频率提高、调用关系日趋复杂,监控数据量越来越大,运维人员无法从海量监控数据中有效发现异常,传统系统运维方式受到极大挑战。基于数据驱动的智能化运维(aiops)受到越来越多的关注,aiops白皮书中提到了人工智能技术在应用运维领域落地实施的多个应用场景,其中通过人工智能算法准确的从监控数据中发现异常是智能运维在质量保障方向的重要应用场景。
3.目前,运维服务异常检测方法有很多,例如,基于固定阈值的同比法、环比法、基于统计假设的数据概率分布检验方法、基于时序数据的异常检测方法、基于数据驱动的机器学习、深度学习或人工智能检测方法对海量、高维、复杂场景进行异常检测的方法等。
4.目前,已有的运维服务异常检测方法主要存在如下缺陷:
5.1)基于时序数据预测的异常检测,不需要额外的数据作为先验知识,但是时序算法对要分析的数据有稳定性要求,短时预测相对准确,未来长时期数据预测效果差,而且异常数据的标签难以获取。
6.2)有监督的机器学习算法需要异常数据的标签,这些标签数据需要运维人员基于经验从大量的历史指标数据中进行标注,成本高、标注准确性也难以保证。
7.3)如基于参数估计的高斯模型、回归模型和混合参数分布模型等,无监督的统计模型,需预先假设数据满足某一概率分布,通过训练数据学习分布的参数从而确定数据分布以及异常,但是该假设分布与实际情况往往差别较大,并且某些实际情况难以用函数描述。
8.4)如聚类算法等无监督学习的非参数估计的异常检测方法,不需要假设分布和先验知识,而是直接采用数据密度和阈值,将低密度区域的数据实例检测为异常,该类方法不具有提早预测异常的能力,容易对极值等低密度区域的正常值产生误报。
9.此外,上述服务异常检测方法存在效率低、准确性较差、异常告警误报、异常告警漏报等问题。
10.因此,如何高效准确地识别运维监控指标的异常,避免异常告警的误报和漏报,是亟待解决的技术问题。


技术实现要素:

11.鉴于现有技术的以上问题,本技术提供一种服务异常检测方法和装置、设备、存储介质,以高效准确地识别监控指标的异常,避免异常告警的误报和漏报。
12.为达到上述目的,本技术第一方面提供了一种服务异常检测方法,包括:
13.确定与服务的性能指标相关的业务指标;
14.构建所述业务指标和所述性能指标的关系模型;
15.利用所述关系模型确定所述性能指标的异常阈值;
16.根据与所述性能指标相关的业务指标在第一时刻的采集值,调用所述关系模型得到与所述业务指标相关的性能指标在第一时刻的预测值;
17.根据所述性能指标在第一时刻的预测值、所述性能指标在第一时刻的采集值和所述性能指标的异常阈值,确定服务是否发生异。
18.由此,可通过构建性能指标与业务指标的关系模型高效准确地识别服务的性能指标异常,有效减少异常告警的误报和漏报。
19.第一方面的一种可能的实现方式中,所述构建所述业务指标和所述性能指标的关系模型,包括:利用训练数据集,基于监督学习算法构建业务指标和性能指标的关系模型,所述训练数据集包括所述服务的性能指标历史数据和业务指标历史数据,所述性能指标历史数据包括所述性能指标的e个历史采集值,所述业务指标历史数据包括所述业务指标的e个历史采集值,e为大于1的整数。由此,通过服务的历史数据即可准确获得能够反映业务指标和性能指标之间直接关系的关系模型。
20.第一方面的一种可能的实现方式中,所述利用所述关系模型确定所述性能指标的异常阈值,包括:基于测试数据集中与所述性能指标相关的业务指标的测试数据和所述关系模型得到所述性能指标的预测数据,根据所述性能指标的预测数据与所述测试数据集中该性能指标的测试数据计算得到残差均值,以所述残差均值与预定的残差倍数的乘积作为所述性能指标的异常阈值;其中,所述测试数据集中包含业务指标的测试数据和性能指标的测试数据,所述业务指标的测试数据包括f个业务指标采集值,所述性能指标的测试数据包括f个性能指标采集值,所述性能指标的预测数据包括f个性能指标预测值,f为大于或等于1的整数。
21.由此,通过业务指标和性能指标的关系模型,结合残差倍数,获得更准确地异常阈值,从而进一步减少误告警
22.本技术第一方面的一种可能的实现方式中,根据所述性能指标在第一时刻的预测值、所述性能指标在第一时刻的采集值和所述性能指标的异常阈值,确定服务是否发生异,包括:确定所述性能指标在第一时刻的预测值与所述性能指标在第一时刻的采集值之间的残差;将所述性能指标的残差与所述性能指标的异常阈值比较,以确定所述服务发生异常还是所述服务正常。
23.由此,通过残差和阈值即可准确确认服务是否发生异常,计算复杂度低,计算资源的消耗也较低,可有效提高服务异常的检测效率。
24.本技术第二方面提供了一种服务异常检测装置,包括:
25.相关性确定模块,用于确定与服务的性能指标相关的业务指标;
26.模型构建模块,用于构建所述业务指标和所述性能指标的关系模型;
27.阈值确定模块,用于利用所述关系模型确定所述性能指标的异常阈值;
28.异常确定模块,用于根据与所述性能指标相关的业务指标在第一时刻的采集值,调用所述关系模型得到与所述业务指标相关的性能指标在第一时刻的预测值;以及,根据所述性能指标在第一时刻的预测值、所述性能指标在第一时刻的采集值和所述性能指标的异常阈值,确定服务是否发生异常。
29.第二方面的一种可能的实现方式中,所述模型构建模块,具体用于:利用训练数据集,基于监督学习算法构建业务指标和性能指标的关系模型,所述训练数据集包括所述服务的性能指标历史数据和业务指标历史数据,所述性能指标历史数据包括所述性能指标的e个历史采集值,所述业务指标历史数据包括所述业务指标的e个历史采集值,e为大于1的整数。
30.第二方面的一种可能的实现方式中,所述阈值确定模块,具体用于:
31.基于测试数据集中与所述性能指标相关的业务指标的测试数据和所述关系模型得到所述性能指标的预测数据,根据所述性能指标的预测数据与所述测试数据集中该性能指标的测试数据计算得到残差均值,以所述残差均值与预定的残差倍数的乘积作为所述性能指标的异常阈值;其中,所述测试数据集中包含业务指标的测试数据和性能指标的测试数据,所述业务指标的测试数据包括f个业务指标采集值,所述性能指标的测试数据包括f个性能指标采集值,所述性能指标的预测数据包括f个性能指标预测值,f为大于或等于1的整数。
32.第二方面的一种可能的实现方式中,所述异常确定模块,具体用于:确定所述性能指标在第一时刻的预测值与所述性能指标在第一时刻的采集值之间的残差;将所述性能指标的残差与所述性能指标的异常阈值比较,以确定所述服务发生异常还是所述服务正常。
33.本技术第三方面提供了一种计算设备,包括:处理器和存储器;所述存储器用于存储程序指令,所述程序指令当被所述处理器执行时使得所述计算设备实现上述第一方面的方法。
34.本技术第四方面提供了一种计算机可读存储介质,其上存储有程序指令,其特征在于,所述程序指令当被计算机执行时使得所述计算机实现上述第一方面的方法。
35.本技术第五方面提供了一种计算机程序产品,其包括计算机程序,计算机程序在被处理器运行时使得该处理器执行第一方面的方法。
附图说明
36.以下参照附图来进一步说明本技术的各个特征和各个特征之间的联系。附图均为示例性的,一些特征并不以实际比例示出,并且一些附图中可能省略了本技术所涉及领域的惯常的且对于本技术非必要的特征,或是额外示出了对于本技术非必要的特征,附图所示的各个特征的组合并不用以限制本技术。另外,在本说明书全文中,相同的附图标记所指代的内容也是相同的。具体的附图说明如下:
37.图1是本技术服务异常检测方法的流程图;
38.图2是本技术服务异常检测方法的具体实现流程示意图;
39.图3是本技术服务异常检测装置的结构示意图;
40.图4是本技术服务异常检测装置的示例性具体结构示意图。
41.图5是本技术实施例提供的一种计算设备的结构示意图。
具体实施方式
42.为了准确地对本技术中的技术内容进行叙述,以及为了准确地理解本技术,在对具体实施方式进行说明之前先对本说明书中所使用的术语给出如下的解释说明或定义。
43.性能指标:指服务在处理业务时所用的资源,性能指标可以是但不限于cpu利用率、磁盘读写速度、内存占用率、网络进出速率等。
44.业务指标:指服务处理的实际业务类型,可以按照业务请求类型将每秒处理的事务数量(tps,transactions per second)分别统计后得到。以网关服务为例,业务指标可以是但不限于售票请求、售票应答、兑奖请求、兑奖应答、终端登录请求、终端登录应答等。
45.鉴于服务的性能指标与该服务处理的业务指标极度相关,即使采集到的性能指标有部分波动,其残差也在一定范围内。本技术实施例提供了一种服务异常检测方法和装置、设备、存储介质,先构建性能指标与业务指标的关系模型,再利用该关系模型能够有效识别服务的性能指标异常,由此,本技术实施例能够高效准确地识别服务的监控指标是否发生异常,从而有效减少异常告警的误报和漏报。
46.本技术实施例可适用于各类智能运维场景,尤其适用于采用微服务技术的运维场景、复杂运维场景、具有海量监控数据的运维场景。例如,本技术实施例可适用但不限于如下场景:系统软件规模较大的运维场景、系统软件变更频率较高的运维场景、系统软件调用关系复杂的运维场景、监控数据量较大的运维场景等等。
47.本技术实施例中的“服务”是指微服务,微服务是指具有业务功能的单个小型服务,一个微服务只负责一类业务。一个服务可以在单一职责原则下进行业务能力封装,可以独立部署和运行。实际应用中,一个系统或者大型服务可以根据实际需求拆分为多个功能单一的微服务。例如,本技术实施例的“服务”可以是售票服务、兑奖服务等,售票服务的业务指标可以包括但不限于售票请求、售票应答等,兑奖服务的业务指标可以包括但不限于兑奖请求、兑奖应答。
48.图1示出了本技术实施例提供的服务异常检测方法的流程示意图。参见图1所示,本技术实施例提供的服务异常检测方法可以包括如下步骤:
49.步骤s110,确定与服务的性能指标相关的业务指标;
50.一些实施方式中,可以利用相关性算法确定服务性能指标相关的业务指标。相关性算法是用来衡量两个变量相关性关系的方法。一些示例中,相关性算法可以是但不限于皮尔森相关系数方法、斯皮尔曼(spearman)秩序相关系数法、肯德尔(kendall)秩序相关系数法、最大信息系数(maximal information coefficient,mic)法等。
51.实际应用中,性能指标相关的业务指标与服务处理的业务类型相关。例如,售票服务的cpu利用率与售票请求相关,cpu利用率为性能指标,售票请求为业务指标。再例如,磁盘利用率通常是恒定值,无相关的业务指标。再例如,兑奖服务的cpu利用率和终端兑奖请求相关,同时兑奖服务的cpu利用率还与管理端兑奖请求相关,cpu利用率为性能指标,终端兑奖请求、管理端兑奖请求、终端售票请求为业务指标。这些性能指标与业务指标的相关关系,可以通过相关性算法确定。实际应用中,可以预先根据业务场景通过专家经验配置业务指标库,再通过相关性算法从业务指标库中找出与性能指标相关的业务指标。
52.步骤s120,构建业务指标和性能指标的关系模型;
53.一些实施例中,可以利用训练数据集,基于监督学习算法构建业务指标和性能指标的关系模型。例如,关系模型可以是但不限于拟合曲线或其他模型。
54.具体应用中,训练数据集可以由通过收集历史指标数据得到。一些实施例中,训练数据集可以包括服务的性能指标历史数据和业务指标历史数据,性能指标历史数据包括性
能指标的e个历史采集值,业务指标历史数据包括业务指标的e个历史采集值,e为大于1的整数。例如,以售票服务为例,训练数据集可以包括cpu利用率历史数据、磁盘读写速度历史数据、内存占用率历史数据、网络进出速率历史数据,训练数据集还可以同时包括售票请求历史数据、售票应答历史数据等。再例如,cpu利用率历史数据中包括cpu利用率的100个历史采集值,售票请求历史数据包括售票请求的100个历史采集值,cpu利用率的100个历史采集值与售票请求的100个历史采集值时间段一致。
55.具体地,构建关系模型的示例性过程可以是:基于监督学习算法利用性能指标历史数据和业务指标历史数据拟合第一曲线,得到指示第一曲线内在函数关系的关系模型,第一曲线为性能指标与业务指标的关系曲线。
56.一些示例中,可以采用自定义的函数关系拟合第一曲线以建立关系模型。
57.一些示例中,可以采用自定义的函数拟合第一曲线以建立关系模型,例如,该自定义的函数可以是但不限于下式(1)的线性关系、下式(2)所示的对数关系等。
58.y=k*x b
ꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
59.y=a*log2b*x c
ꢀꢀꢀ
(2)
60.其中,y表示性能指标的取值,x表示业务指标的取值,k、a、b、c分别表示拟合参数,k、a、b、c可以通过拟合确定。
61.一些示例中,可以采用机器学习算法进行拟合,以建立关系模型。例如,该机器学习算法可以是但不限于支持向量机(support vector machines,svm)、保序回归、多项式回归、神经网络、决策树等。
62.步骤s130,利用关系模型确定性能指标的异常阈值;
63.一些实施方式中,利用测试数据集,确定关系模型的异常阈值。具体地,可以基于测试数据集中与性能指标相关的业务指标的测试数据和关系模型得到性能指标的预测数据,根据性能指标的预测数据与测试数据集中该性能指标的测试数据计算得到残差均值,以残差均值与预定的残差倍数的乘积作为性能指标的异常阈值。其中,测试数据集中可以包含业务指标的测试数据和性能指标的测试数据,业务指标的测试数据可以包括业务指标的f个采集值,性能指标的测试数据可以包括性能指标的f个采集值,性能指标的预测数据包括性能指标的f个预测值,f为大于或等于1的整数。这里,测试数据集中的数据也是时间一致的。
64.以售票服务为例,测试数据集可以包括cpu利用率测试数据、磁盘读写速度测试数据、内存占用率测试数据、网络进出速率测试数据,测试数据集还可以同时包括售票请求测试数据、售票应答测试数据等。其中,cpu利用率测试数据可以包括cpu利用率的50个采集值,售票请求测试数据可以包括售票请求的50个采集值,cpu利用率的50个历史采集值与售票请求的50个历史采集值时间一致。
65.一些实施例中,残差倍数可以取经验值。例如,残差倍数的取值范围可以为1.0~2.0之间的数值。残差倍数的计算方式可以为:确定残差分布的均值和方差,将距离均值3倍方差处的值除以均值即可得到残差倍数。具体地,可以将距离均值3倍方差处的值除以均值得到的商保留其小数点后1位得到的数值作为残差倍数。实际应用中,通过该计算方式得到的残差倍数可以作为默认值或者推荐值使用,可允许用户基于经验重新设置残差倍数的取值。
66.经测试发现,若直接使用残差均值作为异常阈值将会产生大量的误告警。而采用残差均值与预定的一个固定倍数(即残差倍数)的乘积作为异常阈值,则可以包容正常的指标抖动,有效减少误告警,并且以该方式确定异常阈值,复杂度低,易于实现,效率较高,并且对计算资源的消耗较低。
67.需要说明的是,确定异常阈值的方式不限于上述方式,还可其他方法确定异常阈值。例如,可以计算性能指标的预测数据与其真实数据之间的残差并以残差的最大值作为异常阈值。
68.测试数据集中包括n个样本(n为大于1的整数),i=1,2,3,

,n,每个样本包括一个性能指标的采集值和与该性能指标相关的业务指标的取值。
69.一些实施例中,性能指标的预测数据与真实数据之间的残差可以通过下式(3)计算得到:
[0070][0071]
其中,resduali表示第i个样本的残差,y
pred
为第i个样本利用关系模型得到的拟合值,y
true
为性能指标的采集值。
[0072]
一些实施例中,残差均值可以通过如下式(4)计算得到:
[0073][0074]
其中,resdual_mean表示残差均值,n为测试数据集中的样本数量。
[0075]
实际应用中,不同的性能指标均可按照式(3)计算残差、按照式(4)计算残差均值。
[0076]
一些实施方式中,可以通过散点图可视化性能指标与业务指标的数据分布,运维人员还可以根据需要手动调整残差倍数以改变异常阈值。如此,不仅可通过可视化的方式更准确的设置异常阈值或者验证默认的异常阈值,而且便于用户根据服务重要性来调整异常阈值,以更灵活地控制服务异常的告警效果。
[0077]
例如,对于重要程度较高的服务,避免漏告警更为重要,误告警较多可以接受,此时,运维人员可以通过手动调整残差倍数来调小异常阈值,以进一步减少漏告警,使得服务的异常告警更灵敏。对于重要程度较低的服务,允许告警有一定的延时,需要尽可能减少误告警,此时,运维人员可以通过手动调整残差倍数来调大异常阈值,以进一步减少误告警。
[0078]
步骤s140,根据与性能指标相关的业务指标在第一时刻的采集值,调用关系模型得到与业务指标相关的性能指标在第一时刻的预测值,根据性能指标在第一时刻的预测值、性能指标在第一时刻的采集值和性能指标的异常阈值,确定服务是否发生异常。
[0079]
这里,第一时刻可以是任意时刻,可以是但不限于当前时刻、过去的某一时刻或者预先设定的某一时刻。
[0080]
一些实施方式中,性能指标的预测值可以是但不限于cpu利用率的预测值、磁盘读写速度的预测值、内存占用率的预测值、网络进出速率的预测值等。
[0081]
一些实施方式中,性能指标的采集值可以是但不限于cpu利用率的采集值、磁盘读写速度的采集值、内存占用率的采集值、网络进出速率的采集值等。一些实施方式中,步骤140的示例性实现流程可以包括如下步骤:
[0082]
步骤a1,实时采集服务的性能指标值和业务指标值,将性能指标值按照分钟聚合、将业务指标值按照分钟聚合,以实现性能指标与业务指标的时间对齐,从而获得性能指标
的采集值和业务指标的采集值;
[0083]
这里,性能指标的时间是指性能指标采集值的采集时间,业务指标的时间可以是业务请求入库时间。
[0084]
一些示例中,性能指标的聚合过程可以为:计算以性能指标的采集时刻为终止时间向前推预定时间段(例如,1分钟)内采集到的性能指标值的均值,以该均值作为该采集时刻的性能指标采集值。举例来说,业务指标每秒统计一次,性能指标每30秒采集一次,性能指标的采集时刻例如可以是:12:00:10,12:00:40,12:01:10,以12:00:40采集时刻为例,取时刻11:59:40到时刻12:00:40之间的所有性能指标值的均值作为时刻12:00:40的性能指标采集值。
[0085]
具体应用中,业务指标的聚合与性能指标的聚合相同,业务指标聚合时的终止时间与性能指标聚合时的终止时间相同。
[0086]
以网关服务为例,可以从流量路由网关处按分钟获取各业务类型的业务指标的数据。
[0087]
步骤a2,调用关系模块对处理后的业务指标的数据进行预测以得到与该业务指标相关的性能指标的预测值;
[0088]
步骤a3,计算性能指标的预测值和性能指标的采集值之间的残差,判断残差是否超过该性能指标的异常阈值,以确定服务发生异常还是服务正常。
[0089]
这里,针对一个服务可以同时监控多个性能指标,每个性能指标对应一个异常阈值。
[0090]
一些示例中,确定服务发生异常还是服务正常的过程可以包括:若服务具有g个性能指标,g个性能指标中的h个性能指标的残差均超出其异常阈值,则确定服务发生异常,若残差超出异常阈值的性能指标数量小于h,则可以确定服务正常,g为大于或等于1的整数,h为大于或等于1且小于或等于g的整数。
[0091]
一些示例中,一个服务可以监控一个或多个性能指标(例如cpu利用率、磁盘读写速度、内存占用率、网络进出速率等),确定服务发生异常还是服务正常的过程可以包括:若服务的预定性能指标(例如,cpu利用率)连续m次超出其异常阈值,即使该服务的其他性能指标均未超出其异常阈值,也确定服务发生异常,若服务的预定性能指标(例如,cpu利用率)连续超出其异常阈值的次数小于m,则确定服务正常,m为大于或等于1的整数,例如,m可以为3。
[0092]
参见图2所示,本技术实施例方法的示例性具体实现流程可以包括如下步骤:
[0093]
步骤s210,使用指标采集分析工具采集服务的业务指标值以及各个服务的性能指标值,得到该服务的业务指标的采集值和性能指标的采集值。
[0094]
一些实施方式中,可以使用例如zabbix、prometus等监控软件采集服务的性能指标相关数据,使用例如elasticsearch等数据分析引擎统计业务指标相关数据。
[0095]
一些实施方式中,服务的性能指标可以是但不限于:cpu利用率、内存使用大小,磁盘读写速度、网络进出速度等。
[0096]
一些实施方式中,可以根据系统/服务处理业务种类,分别统计每种业务的请求数量,作为不同的业务指标。这里,业务种类是同一类业务指标的统称,如兑奖业务、售票业务等。以兑奖业务为例,业务指标可以包括终端兑奖、管理端兑奖、兑奖查询等与实际业务相
关的指标。服务处理的的业务种类不同,其业务指标则不同,服务的具体业务指标可以根据具体业务自行定制。
[0097]
步骤s220,数据预处理,包括:处理指标数据中的缺失数据、离群点数据,并进行数据类型转换和数据标准化,以获得可用于监督学习算法或相关性算法的数据格式。
[0098]
这里,指标数据包括业务指标数据和性能指标数据。
[0099]
一些实施方式中,清洗可以包括:根据指标数据中的缺失值和/或异常值,对指标数据进行清洗。例如,由于采集到的指标数据采集密度大,部分指标每隔一秒采集一次,部分指标每隔30秒采集一次,采集间隔最大不超过1分钟,因此,当缺失值比例不超10%时,可以直接采用删除的方法去除缺失数据,以实现清洗。
[0100]
一些实施方式中,指标数据的对齐方式如前文所述的聚合方式,此处不再赘述。
[0101]
步骤s230,使用相关性算法确定与性能指标相关的业务指标。
[0102]
一些实施方式中,可以使用皮尔森等相关系数算法从众多业务指标中挖掘出与服务的性能指标最相关的业务指标。具体应用中,如果服务拆分的足够细,与服务的性能指标最相关的业务指标可以只包含1类。
[0103]
步骤s240,使用有监督学习算法或自定义函数利用训练数据集拟合,得到服务的性能指标与业务指标之间的关系模型;
[0104]
步骤s250,基于关系模型确定服务的性能指标的异常阈值;
[0105]
步骤s260,基于与性能指标相关的业务指标的采集值和关系模型确定各性能指标的预测值,计算性能指标的预测值与性能指标的采集值之间的残差,将该残差与性能指标的异常阈值比较以确定服务发生异常还是服务正常,如果服务发生异常则继续步骤s270,如果服务正常,可以不执行动作,重复执行步骤s210和步骤s260,继续下一时刻或下一周期的服务异常检测。
[0106]
步骤s270,在服务发生异常时,发出告警提示。
[0107]
图3示出了本技术实施例提供的一种服务异常检测装置的示例性结构示意图。参见图3所示,本技术实施例提供的服务异常检测装置可以包括:
[0108]
相关性确定模块31,用于确定与服务的性能指标相关的业务指标;
[0109]
模型构建模块32,用于构建所述业务指标和所述性能指标的关系模型;
[0110]
阈值确定模块33,用于利用所述关系模型确定所述性能指标的异常阈值;
[0111]
异常确定模块34,用于根据与性能指标相关的业务指标在第一时刻的采集值,调用关系模型得到与业务指标相关的性能指标在第一时刻的预测值,根据性能指标在第一时刻的预测值、性能指标在第一时刻的采集值和性能指标的异常阈值,确定服务是否发生异常。
[0112]
一些实施方式中,模型构建模块32具体可用于:利用训练数据集,基于监督学习算法构建业务指标和性能指标的关系模型,所述训练数据集包括所述服务的性能指标历史数据和业务指标历史数据,所述性能指标历史数据包括所述性能指标的e个历史采集值,所述业务指标历史数据包括所述业务指标的e个历史采集值,e为大于1的整数。
[0113]
一些实施方式中,阈值确定模块33具体可用于:基于测试数据集中与所述性能指标相关的业务指标的测试数据和所述关系模型得到所述性能指标的预测数据,根据所述性能指标的预测数据与所述测试数据集中该性能指标的测试数据计算得到残差均值,以所述
残差均值与预定的残差倍数的乘积作为所述性能指标的异常阈值;其中,所述测试数据集中包含业务指标的测试数据和性能指标的测试数据,所述业务指标的测试数据包括所述业务指标的f个采集值,所述性能指标的测试数据包括所述性能指标的f个采集值,所述性能指标的预测数据包括所述性能指标的f个预测值,f为大于或等于1的整数。
[0114]
一些实施方式中,异常确定模块34具体可用于:确定所述性能指标在第一时刻的预测值与所述性能指标在第一时刻的采集值之间的残差;将所述性能指标的残差与所述性能指标的异常阈值比较,以确定所述服务发生异常还是所述服务正常。
[0115]
具体应用中,本技术实施例提供的服务异常检测装置可以通过软件、硬件或两者的结合实现。
[0116]
图4示出了本技术实施例提供的服务异常检测装置的一种示例性具体实现结构。参见图4所示,本技术实施例提供的服务异常检测装置的示例性具体实现结构可以包括:
[0117]
数据处理单元41,包括指标采集模块411,指标聚合模块412以及指标对齐模块413,指标采集模块411主要用于业务指标和性能指标的数据采集,指标聚合模块412主要用于将指数数据按时间聚合以获得性能指标采集值和业务指标采集值,指标对齐模块413主要用于实现业务指标与性能指标的数据(例如,采集值)对齐,通过指标采集模块411、指标聚合模块412以及指标对齐模块413可以可以生成统一数据集,该统一数据集中包含已对齐的业务指标采集值和性能指标采集值。
[0118]
动态拟合单元42,包含五个模块:数据清洗模块421和上述的相关性确定模块31、模型构建模块32,阈值确定模块33和异常确定模块34,其中,数据清洗模块421,可用于处理缺失数据、离群点数据以及数据类型转换和数据标准化,生成可用于监督学习算法或相关性算法的数据。
[0119]
图5是本技术实施例提供的一种计算设备500的结构性示意性图。该计算设备500包括:处理器510、存储器520。
[0120]
其中,该处理器510可以与存储器520连接。该存储器520可以用于存储该程序代码和数据。因此,该存储器520可以是处理器510内部的存储单元,也可以是与处理器510独立的外部存储单元,还可以是包括处理器510内部的存储单元和与处理器510独立的外部存储单元的部件。
[0121]
可选地,计算设备500还可包括:通信接口530。应理解,图5所示的计算设备500中的通信接口530可以用于与其他设备之间进行通信。
[0122]
可选地,计算设备500还可以包括总线540。其中,存储器520、通信接口530可以通过总线540与处理器510连接。总线540可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。所述总线540可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条线表示,但并不表示仅有一根总线或一种类型的总线。
[0123]
应理解,在本技术实施例中,该处理器510可以采用中央处理单元(central processing unit,cpu)。该处理器还可以是其它通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field programmable gate array,fpga)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处
理器也可以是任何常规的处理器等。或者该处理器510采用一个或多个集成电路,用于执行相关程序,以实现本技术实施例所提供的技术方案。
[0124]
该存储器520可以包括只读存储器和随机存取存储器,并向处理器510提供指令和数据。处理器510的一部分还可以包括非易失性随机存取存储器。例如,处理器510还可以存储设备类型的信息。
[0125]
在计算设备500运行时,所述处理器510执行所述存储器520中的计算机执行指令执行上述服务异常检测方法的操作步骤。
[0126]
应理解,根据本技术实施例的计算设备500可以对应于执行根据本技术各实施例的方法中的相应主体,并且计算设备500中的各个模块的上述和其它操作和/或功能分别为了实现本实施例各方法的相应流程,为了简洁,在此不再赘述。
[0127]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0128]
本技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时用于执行上述的服务异常检测方法。
[0129]
本技术实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是,但不限于,电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0130]
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0131]
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括、但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。
[0132]
可以以一种或多种程序设计语言或其组合来编写用于执行本技术操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c ,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(lan)或广域
网(wan),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0133]
本技术实施例还提供了一种计算机程序产品,其包括计算机程序,所述计算机程序在被处理器运行时使得该处理器执行上述的服务异常检测方法。这里,计算机程序产品的程序设计语言可以是一种或多种,该程序设计语言可以包括但不限于诸如java、c 等面向对象的程序设计语言、诸如“c”语言等的常规过程式程序设计语言。
[0134]
注意,上述仅为本技术的较佳实施例及所运用技术原理。本领域技术人员会理解,本技术不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本技术的保护范围。因此,虽然通过以上实施例对本技术进行了较为详细的说明,但是本技术不仅仅限于以上实施例,在不脱离本技术构思的情况下,还可以包括更多其他等效实施例,均属于本技术保护范畴。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献