CN113806615B - 一种智能it运维系统的kpi异常预警方法 - Google Patents

一种智能it运维系统的kpi异常预警方法 Download PDF

Info

Publication number
CN113806615B
CN113806615B CN202111365867.3A CN202111365867A CN113806615B CN 113806615 B CN113806615 B CN 113806615B CN 202111365867 A CN202111365867 A CN 202111365867A CN 113806615 B CN113806615 B CN 113806615B
Authority
CN
China
Prior art keywords
time
trend
index
data
abnormal
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.)
Active
Application number
CN202111365867.3A
Other languages
English (en)
Other versions
CN113806615A (zh
Inventor
张�诚
刘进
杨瀚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Sobey Digital Technology Co Ltd
Original Assignee
Chengdu Sobey Digital Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chengdu Sobey Digital Technology Co Ltd filed Critical Chengdu Sobey Digital Technology Co Ltd
Priority to CN202111365867.3A priority Critical patent/CN113806615B/zh
Publication of CN113806615A publication Critical patent/CN113806615A/zh
Application granted granted Critical
Publication of CN113806615B publication Critical patent/CN113806615B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

本发明公开了一种智能IT运维系统的KPI异常预警方法,包括步骤:S1,确定相邻时间异常数据,并将相邻时间异常数据组成异常数据组;S2,确定异常数据过渡过程时间组;S3,计算步骤S2中异常数据过渡过程时间组起始时间点内的趋势波动点;S4,基于步骤S2、S3的数据,计算并记录趋势信息和最值趋势信息;S5,利用步骤S4中的趋势信息和最值趋势信息,在实时异常预警中判断实时数据是否发生异常。本发明既能够准确的学习历史异常数据的趋势信息,又能够避免人为进行大量的特征工程,对于保证IT设备异常预测的准确率、减轻人工工作量,具有十分重要的作用。

Description

一种智能IT运维系统的KPI异常预警方法
技术领域
本发明涉及智能IT运维系统KPI异常预测领域,更为具体的,涉及一种智能IT运维系统的KPI异常预警方法。
背景技术
近年来,随着各行业的业务的不断发展,越来越多的IT设备投入到各行业生产环境中。IT设备是否正常运行,直接关系到业务系统是否正常运转。目前,已经有许多KPI(KeyPerformance Indicators)异常检测算法已经应用到IT设备故障检测当中。但是KPI异常检测算法必须是在异常发生之后才能发挥作用,并不能预测未来是否可能会发生异常。此时虽然能够正确的检测到故障的发生,但是已经对业务造成了影响。因此,能否准确的预测IT设备未来是否可能会发生异常,让运维人员尽早干预,对于维持业务系统持续不断的正常运转,具有重要的作用。
由于IT设备KPI通常都是时序数据,因此在常规的异常预测算法中,将其理解为一个时序数据预测问题,然后采用传统时序预测算法(如:Holt-Winters、STL、ARIMA)进行预测。传统时序预测算法将时间序列分解为趋势性、周期性,通过历史时序数据的趋势性预测未来时间的数据。因此,当时序数据无明显的趋势性、时,传统时序预测算法会出现较大误差。
另外一种异常预测思路,使用决策树算法学习历史时序数据中曾出现的异常趋势。在对原始时序数据进行充分的特征工程之后(如:同比、环比等特征构造法),使用有监督学习的决策树算法,可以很好的学习到历史异常发生时的趋势信息。但是决策树算法非常依赖大量的特征工程,特征工程的效果往往决定了异常预测效果的优劣,因此也限制了决策树算法在异常预测中的应用。
发明内容
本发明的目的在于克服现有技术的不足,提供一种智能IT运维系统的KPI异常预警方法,既能够准确的学习历史异常数据的趋势信息,又能够避免人为进行大量的特征工程,对于保证IT设备异常预测的准确率、减轻人工工作量,具有十分重要的作用等。
本发明的目的是通过以下方案实现的:
一种智能IT运维系统的KPI异常预警方法,包括步骤:
S1,确定相邻时间异常数据,并将相邻时间异常数据组成异常数据组;
S2,确定异常数据过渡过程时间组;
S3,计算步骤S2中异常数据过渡过程时间组起始时间点内的趋势波动点;
S4,基于步骤S2、S3的数据,计算并记录趋势信息和最值趋势信息;
S5,利用步骤S4中的趋势信息和最值趋势信息,在实时异常预警中判断实时数据是否发生异常。
进一步地,步骤S1包括子步骤:
S101,设定阈值K,将历史KPI数据与阈值K对比,大于等于K的标记为1,小于K的标记为0;
S102,遍历历史KPI数据,找到当前时间点为1的数据即异常数据,且前一个时间点为0即正常数据的入点时间,并记录到时间序列time1_pre;
S103,遍历历史KPI数据,找到当前时间点为1即异常数据,且后一个时间点为0即正常数据的出点时间,并记录到时间序列time1_last;
S104,根据S102、S103得到的时间序列,依据索引一一对应形成异常入出时间对,并记录到异常数据组time1_pair;
S105,根据S104得到的异常数据组time1_pair,遍历异常数据组time1_pair中的异常入出时间对;如果前一个入出时间对的出点时间与后一个入出时间对的入点时间间隔小于设定时间间隔Z,则将这两个入出时间对合并,保留前一个时间对的入点时间和后一个时间队的出点时间;遍历完成后最终结果更新异常数据组time1_pair。
进一步地,步骤S2包括子步骤:
S201,遍历S105中异常数据组time1_pair中的异常入出时间对,对每一个异常入点时间,向前推N个时间点,并记录到时间序列time2_pre;
S202,遍历异常数据组time1_pair中的异常入出时间对,对每一个异常出点时间,向后推N个时间点,并记录到时间序列time2_last;
S203,根据S201、S202得到的时间序列,依据索引一一对应形成异常数据过渡过程时间组time2_pair;
其中,15<N<30。
进一步地,步骤S3包括子步骤:
S301,遍历步骤S203中异常数据过渡过程时间组time2_pair的过渡过程入出时间对,找到这一段时间内对应的历史KPI数据;
S302,基于S301获取数据,计算获取的数据的一阶差分绝对值,即每一个时间点数据减去前一个时间点数据的差值的绝对值;
S303,基于S302的计算数据,使用max-min算法进行归一化公式如下:
Figure 382418DEST_PATH_IMAGE001
其中,x表示S302计算的一阶差分绝对值,min(x)表示一阶差分绝对值的最小值,max(x)表示一阶差分绝对值的最大值;
S304,基于S303归一化后的数据,使用Isolation Forest算法寻找归一化数据的离群点,并基于离群点得到对应的时间点,然后按时间排序并记录到trend_points;把过渡过程入出时间对分别记录到trend_points的开头和结尾。
进一步地,步骤S4包括子步骤:
S401:设置组数索引index_i=0,最大斜率
Figure 741856DEST_PATH_IMAGE002
;超越阈值K剩余时间阈值
Figure 7752DEST_PATH_IMAGE003
,其中M是常量;均方误差阈值
Figure 85429DEST_PATH_IMAGE004
,其中C是常量;
S402:判断组数索引index_i是否小于异常数据过渡过程时间组的组数len(time2_pair),若成立则跳转403;若不成立则结束步骤S4训练流程;
S403:设置趋势波动点固定索引index_j1=0,设置该段索引内部拟合趋势线的斜 率
Figure 977031DEST_PATH_IMAGE005
,超越阈值K的时间
Figure 722133DEST_PATH_IMAGE006
S404:设置趋势波动点移动索引index_j2=index_j1+1;
S405:若index_j1和index_j2同时小于趋势波动点数len(trend_points),则跳转S406;若index_j1小于len(trend_points)但index_j2大于等于len(trend_points),则跳转S411;若index_j1和index_j2同时大于等于len(trend_points),则跳转S413;
S406:基于趋势波动点固定索引index_j1和趋势波动点移动索引index_j2,截取这段索引之间的历史KPI数据;
S407:基于步骤S406获取的历史KPI数据,使用带L1正则化和L2正则化的线性回归算法,拟合线性趋势线;该线性回归算法的损失函数如下:
Figure 893351DEST_PATH_IMAGE007
其中,m表示样本数量,
Figure 723904DEST_PATH_IMAGE008
表示第i个样本拟合数值,
Figure 153617DEST_PATH_IMAGE009
表示第i个样本真实 数值;λ表示正则项系数,
Figure 487647DEST_PATH_IMAGE010
表示第j个参数;
S408:基于步骤S407拟合的线性趋势线,获取该线性趋势线的斜率
Figure 95345DEST_PATH_IMAGE011
,并计算 在超越阈值K的时间
Figure 147615DEST_PATH_IMAGE012
、均方误差
Figure 118370DEST_PATH_IMAGE013
S409:判断
Figure 775747DEST_PATH_IMAGE014
并且
Figure 554347DEST_PATH_IMAGE015
是否成立,若成立则更新该段索引 内部拟合趋势线的斜率
Figure 343180DEST_PATH_IMAGE016
,超越阈值K的时间
Figure 865429DEST_PATH_IMAGE017
,然后再跳转步骤 S410;若不成立,则直接跳转步骤S410;
S410:更新index_j2=index_j2+1,然后跳转S405;
S411:判断
Figure 174050DEST_PATH_IMAGE018
并且
Figure 389131DEST_PATH_IMAGE019
是否成立,若成立则更新最大 斜率
Figure 399681DEST_PATH_IMAGE020
,然后跳转S412;若不成立则直接跳转S412;
S412:更新index_j1=index_j1+1,然后跳转S404;
S413:更新index_i1=index_i1+1,并
Figure 725620DEST_PATH_IMAGE021
保存在趋势信息
Figure 92011DEST_PATH_IMAGE022
列表中,然后 跳转S402。
进一步地,步骤S5包括子步骤:
S501:基于当前时间点并往前推N个时间点,截取前推后的这段时间点对应的实时KPI数据;
S502:基于步骤S3,计算S501截取的实时KPI数据的趋势波动点trend_points,并 读取步骤S4中得到的趋势信息列表
Figure 461681DEST_PATH_IMAGE023
,设置空列表
Figure 975839DEST_PATH_IMAGE024
用于暂存分段结果 信息;
S503:设置趋势波动点固定索引index_j1=len(trend_points);
S504:设置趋势波动点移动索引index_j2=index_j1-1;
S505:基于索引index_j1和index_j2,截取索引index_j1和index_j2之间的这段时间点的实时KPI数据;
S506:基于步骤S505获取实时KPI数据,使用线性回归算法拟合线性趋势线;然后 获取实时线性趋势线的斜率
Figure 839890DEST_PATH_IMAGE025
,并计算在超越阈值K的时间
Figure 857524DEST_PATH_IMAGE026
、均方误差
Figure 666605DEST_PATH_IMAGE027
S507:判断实时线性趋势线的斜率
Figure 668059DEST_PATH_IMAGE025
是否大于趋势信息列表
Figure 335801DEST_PATH_IMAGE028
中的最 大值;成立则记录1到
Figure 207942DEST_PATH_IMAGE029
中,并跳转到S511;不成立则跳转步骤S508;
S508:判断实时线性趋势线的斜率
Figure 184994DEST_PATH_IMAGE030
是否小于等于训练趋势信息
Figure 408165DEST_PATH_IMAGE028
列 表中的最大值并大于等于趋势信息列表
Figure 614018DEST_PATH_IMAGE028
中的最小值,若成立则跳转步骤S509,若 不成立则跳转步骤S510;
S509:判断超越阈值K的时间
Figure 606245DEST_PATH_IMAGE031
小于时间阈值
Figure 754198DEST_PATH_IMAGE032
且均方误差
Figure 402349DEST_PATH_IMAGE027
小于均方误差阈值
Figure 411893DEST_PATH_IMAGE033
,则成立则记录1到
Figure 773473DEST_PATH_IMAGE029
中,并跳转到S511;若不成立则记 录0到
Figure 577481DEST_PATH_IMAGE029
中,并跳转到步骤S511;
S510:判断实时线性趋势线的斜率
Figure 775244DEST_PATH_IMAGE025
是否小于趋势信息列表
Figure 322900DEST_PATH_IMAGE028
中的最 小值;若成立则记录0到
Figure 819214DEST_PATH_IMAGE029
中,并跳转到S511,若不成立则直接跳转到步骤S511;
S511:更新index_j2=index_j2-1,并判断index_j2>0是否成立,若成立则跳转步骤S505,若不成立则跳转步骤S512;
S512:分别统计
Figure 794124DEST_PATH_IMAGE029
中1、0的个数,若1的个数大于0的个数,则判断在M个时 间点后发生异常,否则判断在M个时间点后不发生异常。
本发明的有益效果是:
本发明实施例中,在训练阶段时,首先找到原始数据中根据阈值找到历史异常数据,然后取出历史异常数据的邻域范围数据,最后学习这些异常邻域范围的趋势信息。在预测阶段,基于实时数据的趋势信息,和历史异常邻域范围的趋势信息比对。如果相似,则预测发生异常,否则预测正常。本发明实施例,既能够准确的学习历史异常数据的趋势信息,又能够避免人为进行大量的特征工程,对于保证IT设备异常预测的准确率、减轻人工工作量,具有十分重要的作用。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为基于历史KPI数据的异常训练流程图;
图2为基于实时KPI数据的异常预警流程图;
图3为本发明的步骤流程图。
具体实施方式
本说明书中所有实施例公开的所有特征,或隐含公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合和/或扩展、替换。
实施例1:如图3所示,一种智能IT运维系统的KPI异常预警方法,包括步骤:
S1,确定相邻时间异常数据,并将相邻时间异常数据组成异常数据组;
S2,确定异常数据过渡过程时间组;
S3,计算步骤S2中异常数据过渡过程时间组起始时间点内的趋势波动点;
S4,基于步骤S2、S3的数据,计算并记录趋势信息和最值趋势信息;
S5,利用步骤S4中的趋势信息和最值趋势信息,在实时异常预警中判断实时数据是否发生异常。
以上五个步骤中,步骤S1寻找历史异常数据,是属于数据准备阶段。步骤S2、S3、S4基于步骤S1准备的历史异常数据,进行特征工程,学习历史异常数据的波动、趋势、持续时长等关键信息,是属于训练学习阶段。步骤S5是基于上述训练学习阶段得到的波动、趋势、持续时长等关键信息,对比实时KPI数据的波动、趋势、持续时长等关键信息,两者越接近,甚至实时KPI数据的关键信息要超越历史异常数据的关键信息,就越可能是异常。
实施例2
如图1~图2所示。在实施例1的基础上,步骤S1确定相邻时间异常数据组是指从历史KPI数据中搜索大于等于阈值的数据,并将相邻的异常数据组成异常数据组,包括子步骤:
S101,设定阈值K,将历史KPI数据与阈值K对比,大于等于K的标记为1,小于K的标记为0;
S102,遍历历史KPI数据,找到当前时间点为1的数据即异常数据,且前一个时间点为0即正常数据的入点时间,并记录到时间序列time1_pre;
S103,遍历历史KPI数据,找到当前时间点为1即异常数据,且后一个时间点为0即正常数据的出点时间,并记录到时间序列time1_last;
S104,根据S102、S103得到的时间序列,依据索引一一对应形成异常入出时间对,并记录到异常数据组time1_pair;
S105,根据S104得到的异常数据组time1_pair,遍历异常数据组time1_pair中的异常入出时间对;如果前一个入出时间对的出点时间与后一个入出时间对的入点时间间隔小于设定时间间隔Z(例如可以是5),则将这两个入出时间对合并,保留前一个时间对的入点时间和后一个时间队的出点时间;遍历完成后最终结果更新异常数据组time1_pair。
实施例3
在实施例2的基础上,步骤S2基于步骤S1异常数据组time1_pair,确定异常数据组的过渡过程时间点,确定异常数据组的过渡过程时间点的目的是为了后续学习正常状态往异常状态过渡的趋势信息时准备数据,包括子步骤:
S201,遍历S105中异常数据组time1_pair中的异常入出时间对,对每一个异常入点时间,向前推N个时间点,并记录到时间序列time2_pre;
S202,遍历异常数据组time1_pair中的异常入出时间对,对每一个异常出点时间,向后推N个时间点,并记录到时间序列time2_last;
S203,根据S201、S202得到的时间序列,依据索引一一对应形成异常数据过渡过程时间组time2_pair;
其中,15<N<30。
实施例4
在实施例3的基础上,步骤S3基于异常数据过渡过程时间组time2_pair,计算得到每组过渡过程数据的趋势波动点。确定趋势波动点的目的是为了简化拟合过程,避免遍历所有不同的时间窗口,同时消除了数据趋势的变化对数据拟合的不利因素,包括子步骤:
S301,遍历步骤S203中异常数据过渡过程时间组time2_pair的过渡过程入出时间对,找到这一段时间内对应的历史KPI数据;
S302,基于S301获取数据,计算获取的数据的一阶差分绝对值,即每一个时间点数据减去前一个时间点数据的差值的绝对值;
S303,基于S302的计算数据,使用max-min算法进行归一化公式如下:
Figure 479183DEST_PATH_IMAGE001
其中,x表示S302计算的一阶差分绝对值,min(x)表示一阶差分绝对值的最小值,max(x)表示一阶差分绝对值的最大值;
S304,基于S303归一化后的数据,使用Isolation Forest算法寻找归一化数据的离群点,并基于离群点得到对应的时间点,然后按时间排序并记录到trend_points;离群点说明该时间点的一阶差分绝对值较大,就越可能是趋势波动的点。把过渡过程入出时间对分别记录到trend_points的开头和结尾。
实施例5
在实施例4的基础上,步骤S4基于步骤S2异常数据过渡过程时间组time2_pair和步骤S3过渡过程数据趋势波动点trend_points,学习从正常状态转变到异常状态的趋势信息。学习趋势信息是为了在实时预警中,基于实时数据的趋势信息,和历史发生异常的趋势信息作对比,包括子步骤:
S401:设置组数索引index_i=0,最大斜率
Figure 830530DEST_PATH_IMAGE002
;超越阈值K剩余时间阈值
Figure 901123DEST_PATH_IMAGE003
,其中M是常量;均方误差阈值
Figure 312513DEST_PATH_IMAGE004
,其中C是常量;
S402:判断组数索引index_i是否小于异常数据过渡过程时间组的组数len(time2_pair),若成立则跳转403;若不成立则结束步骤S4训练流程;
S403:设置趋势波动点固定索引index_j1=0,设置该段索引内部拟合趋势线的斜 率
Figure 219289DEST_PATH_IMAGE005
,超越阈值K的时间
Figure 561277DEST_PATH_IMAGE006
S404:设置趋势波动点移动索引index_j2=index_j1+1;
S405:若index_j1和index_j2同时小于趋势波动点数len(trend_points),则跳转S406;若index_j1小于len(trend_points)但index_j2大于等于len(trend_points),则跳转S411;若index_j1和index_j2同时大于等于len(trend_points),则跳转S413;在该步骤中,需要说明的是,index_j1大于等于len(trend_points)但是index_j2小于len(trend_points)这种情况不可能会出现,因为步骤S404已经设定了index_j2=index_j1+1这个条件。
S406:基于趋势波动点固定索引index_j1和趋势波动点移动索引index_j2,截取这段索引之间的历史KPI数据;
S407:基于步骤S406获取的历史KPI数据,使用带L1正则化和L2正则化的线性回归算法,拟合线性趋势线;该线性回归算法的损失函数如下:
Figure 502688DEST_PATH_IMAGE007
其中,m表示样本数量,
Figure 819400DEST_PATH_IMAGE008
表示第i个样本拟合数值,
Figure 213472DEST_PATH_IMAGE009
表示第i个样本真实 数值;λ表示正则项系数,
Figure 155890DEST_PATH_IMAGE010
表示第j个参数;
S408:基于步骤S407拟合的线性趋势线,获取该线性趋势线的斜率
Figure 951807DEST_PATH_IMAGE011
,并计算 在超越阈值K的时间
Figure 705000DEST_PATH_IMAGE012
、均方误差
Figure 586368DEST_PATH_IMAGE013
S409:判断
Figure 335406DEST_PATH_IMAGE014
并且
Figure 720251DEST_PATH_IMAGE015
是否成立,若成立则更新该段索引 内部拟合趋势线的斜率
Figure 909923DEST_PATH_IMAGE016
,超越阈值K的时间
Figure 278588DEST_PATH_IMAGE017
,然后再跳转步骤 S410;若不成立,则直接跳转步骤S410;
S410:更新index_j2=index_j2+1,然后跳转S405;
S411:判断
Figure 562808DEST_PATH_IMAGE018
并且
Figure 271001DEST_PATH_IMAGE019
是否成立,若成立则更新最大 斜率
Figure 365996DEST_PATH_IMAGE020
,然后跳转S412;若不成立则直接跳转S412;
S412:更新index_j1=index_j1+1,然后跳转S404;
S413:更新index_i1=index_i1+1,并
Figure 471224DEST_PATH_IMAGE021
保存在趋势信息列表
Figure 44287DEST_PATH_IMAGE034
中,然后 跳转S402。
实施例6
在实施例5的基础上,步骤S5基于步骤S4训练异常数据得到的趋势信息列表
Figure 669304DEST_PATH_IMAGE023
,将实时数据的趋势信息作对比,从而判断实时KPI数据是否在M个时间点后是否 会超越阈值K,包括子步骤:
S501:基于当前时间点并往前推N个时间点,截取前推后的这段时间点对应的实时KPI数据;
S502:基于步骤S3,计算S501截取的实时KPI数据的趋势波动点trend_points,并 读取步骤S4中得到的趋势信息列表
Figure 200779DEST_PATH_IMAGE023
,设置空列表
Figure 262145DEST_PATH_IMAGE024
用于暂存分段结果 信息;
S503:设置趋势波动点固定索引index_j1=len(trend_points);
S504:设置趋势波动点移动索引index_j2=index_j1-1;
S505:基于索引index_j1和index_j2,截取索引index_j1和index_j2之间的这段时间点的实时KPI数据;
S506:基于步骤S505获取实时KPI数据,使用线性回归算法拟合线性趋势线;然后 获取实时线性趋势线的斜率
Figure 170058DEST_PATH_IMAGE025
,并计算在超越阈值K的时间
Figure 649581DEST_PATH_IMAGE026
、均方误差
Figure 86379DEST_PATH_IMAGE027
S507:判断实时线性趋势线的斜率
Figure 903549DEST_PATH_IMAGE025
是否大于趋势信息列表
Figure 818416DEST_PATH_IMAGE023
中的最 大值;成立则记录1到
Figure 418024DEST_PATH_IMAGE024
中,并跳转到S511;不成立则跳转步骤S508;
S508:判断实时线性趋势线的斜率
Figure 25723DEST_PATH_IMAGE030
是否小于等于趋势信息列表
Figure 327261DEST_PATH_IMAGE023
中 的最大值并大于等于趋势信息列表
Figure 249080DEST_PATH_IMAGE028
中的最小值,若成立则跳转步骤S509,若不成 立则跳转步骤S510;
S509:判断超越阈值K的时间
Figure 703195DEST_PATH_IMAGE031
小于时间阈值
Figure 731063DEST_PATH_IMAGE032
且均方误差
Figure 270629DEST_PATH_IMAGE027
小于均方误差阈值
Figure 58456DEST_PATH_IMAGE033
,则成立则记录1到
Figure 367078DEST_PATH_IMAGE029
中,并跳转到S511;若不成立则记 录0到
Figure 565847DEST_PATH_IMAGE029
中,并跳转到步骤S511;
S510:判断实时线性趋势线的斜率
Figure 327129DEST_PATH_IMAGE025
是否小于趋势信息列表
Figure 653069DEST_PATH_IMAGE028
中的最 小值;若成立则记录0到
Figure 816197DEST_PATH_IMAGE035
中,并跳转到S511,若不成立则直接跳转到步骤S511;
S511:更新index_j2=index_j2-1,并判断index_j2>0是否成立,若成立则跳转步骤S505,若不成立则跳转步骤S512;
S512:分别统计
Figure 188797DEST_PATH_IMAGE035
中1、0的个数,若1的个数大于0的个数,则判断在M个时 间点后发生异常,否则判断在M个时间点后不发生异常。
本发明功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,在一台计算机设备(可以是个人计算机,服务器,或者网络设备等)以及相应的软件中执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、或者光盘等各种可以存储程序代码的介质,进行测试或者实际的数据在程序实现中存在于只读存储器(Random Access Memory,RAM)、随机存取存储器(Random Access Memory,RAM)等。

Claims (6)

1.一种智能IT运维系统的KPI异常预警方法,其特征在于,包括步骤:
S1,确定相邻时间异常数据,并将相邻时间异常数据组成异常数据组;
S2,确定异常数据过渡过程时间组;
S3,计算步骤S2中异常数据过渡过程时间组起始时间点内的趋势波动点;所述趋势波动点为基于离群点得到对应的时间点;
S4,基于步骤S2、S3的数据,计算并记录趋势信息和最值趋势信息;所述趋势信息为斜率、时间和均方误差;所述最值趋势信息为最大斜率;
S5,利用步骤S4中的趋势信息和最值趋势信息,在实时异常预警中与实时数据的趋势信息作对比,从而判断实时KPI数据是否在多个时间点后是否会超越阈值,从而判断实时数据是否发生异常。
2.根据权利要求1所述的智能IT运维系统的KPI异常预警方法,其特征在于,步骤S1包括子步骤:
S101,设定阈值K,将历史KPI数据与阈值K对比,大于等于K的标记为1,小于K的标记为0;
S102,遍历历史KPI数据,找到当前时间点为1的数据即异常数据,且前一个时间点为0即正常数据的入点时间,并记录到时间序列time1_pre;
S103,遍历历史KPI数据,找到当前时间点为1即异常数据,且后一个时间点为0即正常数据的出点时间,并记录到时间序列time1_last;
S104,根据S102、S103得到的时间序列,依据索引一一对应形成异常入出时间对,并记录到异常数据组time1_pair;
S105,根据S104得到的异常数据组time1_pair,遍历异常数据组time1_pair中的异常入出时间对;如果前一个入出时间对的出点时间与后一个入出时间对的入点时间间隔小于设定时间间隔Z,则将这两个入出时间对合并,保留前一个时间对的入点时间和后一个时间队的出点时间;遍历完成后最终结果更新异常数据组time1_pair。
3.根据权利要求2所述的智能IT运维系统的KPI异常预警方法,其特征在于,步骤S2包括子步骤:
S201,遍历S105中异常数据组time1_pair中的异常入出时间对,对每一个异常入点时间,向前推N个时间点,并记录到时间序列time2_pre;
S202,遍历异常数据组time1_pair中的异常入出时间对,对每一个异常出点时间,向后推N个时间点,并记录到时间序列time2_last;
S203,根据S201、S202得到的时间序列,依据索引一一对应形成异常数据过渡过程时间组time2_pair;
其中,15<N<30。
4.根据权利要求3所述的智能IT运维系统的KPI异常预警方法,其特征在于,步骤S3包括子步骤:
S301,遍历步骤S203中异常数据过渡过程时间组time2_pair的过渡过程入出时间对,找到这一段时间内对应的历史KPI数据;
S302,基于S301获取数据,计算获取的数据的一阶差分绝对值,即每一个时间点数据减去前一个时间点数据的差值的绝对值;
S303,基于S302的计算数据,使用max-min算法进行归一化公式如下:
Figure DEST_PATH_IMAGE001
其中,x表示S302计算的一阶差分绝对值,min(x)表示一阶差分绝对值的最小值,max(x)表示一阶差分绝对值的最大值;
S304,基于S303归一化后的数据,使用Isolation Forest算法寻找归一化数据的离群点,并基于离群点得到对应的时间点,然后按时间排序并记录到trend_points;把过渡过程入出时间对分别记录到trend_points的开头和结尾。
5.根据权利要求4所述的智能IT运维系统的KPI异常预警方法,其特征在于,步骤S4包括子步骤:
S401:设置组数索引index_i=0,最大斜率
Figure DEST_PATH_IMAGE002
;超越阈值K剩余时间阈值
Figure DEST_PATH_IMAGE003
,其中M是常量;均方误差阈值
Figure DEST_PATH_IMAGE004
,其中C是常量;
S402:判断组数索引index_i是否小于异常数据过渡过程时间组的组数len(time2_pair),若成立则跳转S403;若不成立则结束步骤S4训练流程;
S403:设置趋势波动点固定索引index_j1=0,设置该段索引内部拟合趋势线的斜率
Figure DEST_PATH_IMAGE005
,超越阈值K的时间
Figure DEST_PATH_IMAGE006
S404:设置趋势波动点移动索引index_j2=index_j1+1;
S405:若index_j1和index_j2同时小于趋势波动点数len(trend_points),则跳转S406;若index_j1小于len(trend_points)但index_j2大于等于len(trend_points),则跳转S411;若index_j1和index_j2同时大于等于len(trend_points),则跳转S413;
S406:基于趋势波动点固定索引index_j1和趋势波动点移动索引index_j2,截取这段索引之间的历史KPI数据;
S407:基于步骤S406获取的历史KPI数据,使用带L1正则化和L2正则化的线性回归算法,拟合线性趋势线;该线性回归算法的损失函数如下:
Figure DEST_PATH_IMAGE007
其中,m表示样本数量,
Figure DEST_PATH_IMAGE008
表示第i个样本拟合数值,
Figure DEST_PATH_IMAGE009
表示第i个样本真实数值;λ表示正则项系数,
Figure DEST_PATH_IMAGE010
表示第j个参数;
S408:基于步骤S407拟合的线性趋势线,获取该线性趋势线的斜率
Figure DEST_PATH_IMAGE011
,并计算在超越阈值K的时间
Figure DEST_PATH_IMAGE012
、均方误差
Figure DEST_PATH_IMAGE013
S409:判断
Figure DEST_PATH_IMAGE014
并且
Figure DEST_PATH_IMAGE015
是否成立,若成立则更新该段索引内部拟合趋势线的斜率
Figure DEST_PATH_IMAGE016
,超越阈值K的时间
Figure DEST_PATH_IMAGE017
,然后再跳转步骤S410;若不成立,则直接跳转步骤S410;
S410:更新index_j2=index_j2+1,然后跳转S405;
S411:判断
Figure DEST_PATH_IMAGE018
并且
Figure DEST_PATH_IMAGE019
是否成立,若成立则更新最大斜率
Figure DEST_PATH_IMAGE020
,然后跳转S412;若不成立则直接跳转S412;
S412:更新index_j1=index_j1+1,然后跳转S404;
S413:更新index_i1=index_i1+1,并
Figure DEST_PATH_IMAGE021
保存在趋势信息列表
Figure DEST_PATH_IMAGE022
中,然后跳转S402。
6.根据权利要求5所述的智能IT运维系统的KPI异常预警方法,其特征在于,步骤S5包括子步骤:
S501:基于当前时间点并往前推N个时间点,截取前推后的这段时间点对应的实时KPI数据;
S502:基于步骤S3,计算S501截取的实时KPI数据的趋势波动点trend_points,并读取步骤S4中得到的趋势信息列表
Figure DEST_PATH_IMAGE023
,设置空列表
Figure DEST_PATH_IMAGE024
用于暂存分段结果信息;
S503:设置趋势波动点固定索引index_j1=len(trend_points);
S504:设置趋势波动点移动索引index_j2=index_j1-1;
S505:基于索引index_j1和index_j2,截取索引index_j1和index_j2之间的这段时间点的实时KPI数据;
S506:基于步骤S505获取实时KPI数据,使用线性回归算法拟合线性趋势线;然后获取实时线性趋势线的斜率
Figure DEST_PATH_IMAGE025
,并计算在超越阈值K的时间
Figure DEST_PATH_IMAGE026
、均方误差
Figure DEST_PATH_IMAGE027
S507:判断实时线性趋势线的斜率
Figure 134152DEST_PATH_IMAGE025
是否大于趋势信息列表
Figure DEST_PATH_IMAGE028
中的最大值;成立则记录1到
Figure DEST_PATH_IMAGE029
中,并跳转到S511;不成立则跳转步骤S508;
S508:判断实时线性趋势线的斜率
Figure DEST_PATH_IMAGE030
是否小于等于趋势信息列表
Figure 926658DEST_PATH_IMAGE028
中的最大值并大于等于趋势信息列表
Figure 440816DEST_PATH_IMAGE028
中的最小值,若成立则跳转步骤S509,若不成立则跳转步骤S510;
S509:判断超越阈值K的时间
Figure DEST_PATH_IMAGE031
小于时间阈值
Figure DEST_PATH_IMAGE032
且均方误差
Figure 678768DEST_PATH_IMAGE027
小于均方误差阈值
Figure DEST_PATH_IMAGE033
,则成立则记录1到
Figure 102928DEST_PATH_IMAGE029
中,并跳转到S511;若不成立则记录0到
Figure 456549DEST_PATH_IMAGE029
中,并跳转到步骤S511;
S510:判断实时线性趋势线的斜率
Figure 254740DEST_PATH_IMAGE025
是否小于趋势信息列表
Figure 984799DEST_PATH_IMAGE028
中的最小值;若成立则记录0到
Figure DEST_PATH_IMAGE034
中,并跳转到S511,若不成立则直接跳转到步骤S511;
S511:更新index_j2=index_j2-1,并判断index_j2>0是否成立,若成立则跳转步骤S505,若不成立则跳转步骤S512;
S512:分别统计
Figure 968192DEST_PATH_IMAGE034
中1、0的个数,若1的个数大于0的个数,则判断在M个时间点后发生异常,否则判断在M个时间点后不发生异常。
CN202111365867.3A 2021-11-18 2021-11-18 一种智能it运维系统的kpi异常预警方法 Active CN113806615B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111365867.3A CN113806615B (zh) 2021-11-18 2021-11-18 一种智能it运维系统的kpi异常预警方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111365867.3A CN113806615B (zh) 2021-11-18 2021-11-18 一种智能it运维系统的kpi异常预警方法

Publications (2)

Publication Number Publication Date
CN113806615A CN113806615A (zh) 2021-12-17
CN113806615B true CN113806615B (zh) 2022-03-04

Family

ID=78938341

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111365867.3A Active CN113806615B (zh) 2021-11-18 2021-11-18 一种智能it运维系统的kpi异常预警方法

Country Status (1)

Country Link
CN (1) CN113806615B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117493832B (zh) * 2023-12-29 2024-04-09 江西飞尚科技有限公司 滑坡灾害曲线识别方法、系统、存储介质及计算机

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103390227A (zh) * 2013-08-08 2013-11-13 上海汉得信息技术股份有限公司 一种基于云计算的系统运营支持系统
CN110414555A (zh) * 2019-06-20 2019-11-05 阿里巴巴集团控股有限公司 检测异常样本的方法及装置
CN110598851A (zh) * 2019-08-29 2019-12-20 北京航空航天大学合肥创新研究院 一种融合lstm和gan的时间序列数据异常检测方法
CN110825769A (zh) * 2019-10-11 2020-02-21 苏宁金融科技(南京)有限公司 一种数据指标异常的查询方法和系统
CN113158572A (zh) * 2021-04-27 2021-07-23 上海交通大学 一种短期负荷的预测方法及装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101436274A (zh) * 2008-11-14 2009-05-20 山东浪潮齐鲁软件产业股份有限公司 跨平台监控企业应用系统性能的方法
US8380642B2 (en) * 2008-12-03 2013-02-19 Schlumberger Technology Corporation Methods and systems for self-improving reasoning tools
US20130166498A1 (en) * 2011-12-25 2013-06-27 Microsoft Corporation Model Based OLAP Cube Framework
US9223774B2 (en) * 2012-01-17 2015-12-29 Groupon, Inc. Email suggestor system
CN105302848B (zh) * 2014-10-11 2018-11-13 山东鲁能软件技术有限公司 一种设备智能预警系统的评估值校准方法
CN107358317A (zh) * 2017-06-28 2017-11-17 北京优特捷信息技术有限公司 通过机器学习进行时序预测的方法及装置
CN108199795B (zh) * 2017-12-29 2019-05-10 北京百分点信息科技有限公司 一种设备状态的监测方法和装置
US20190384255A1 (en) * 2018-06-19 2019-12-19 Honeywell International Inc. Autonomous predictive real-time monitoring of faults in process and equipment
CN111416790B (zh) * 2019-01-04 2022-08-09 北京数安鑫云信息技术有限公司 基于用户行为的网络异常访问智能识别方法、装置、存储介质及计算机设备
CN112329872B (zh) * 2020-11-11 2022-07-15 湖南安华源电力科技有限公司 一种采用多维融合技术提高光伏发电量的方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103390227A (zh) * 2013-08-08 2013-11-13 上海汉得信息技术股份有限公司 一种基于云计算的系统运营支持系统
CN110414555A (zh) * 2019-06-20 2019-11-05 阿里巴巴集团控股有限公司 检测异常样本的方法及装置
CN110598851A (zh) * 2019-08-29 2019-12-20 北京航空航天大学合肥创新研究院 一种融合lstm和gan的时间序列数据异常检测方法
CN110825769A (zh) * 2019-10-11 2020-02-21 苏宁金融科技(南京)有限公司 一种数据指标异常的查询方法和系统
CN113158572A (zh) * 2021-04-27 2021-07-23 上海交通大学 一种短期负荷的预测方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
How to Forecast KPIs and Performance Measures;STACEY BARR;《https://www.staceybarr.com/measure-up/how-to-forecast-kpis-and-performance-measures/》;20181120;1-14 *
基于深度学习的多变量时间序列预测算法与应用研究;万晨;《中国优秀硕士学位论文全文数据库 基础科学辑》;20210215;A002-925 *

Also Published As

Publication number Publication date
CN113806615A (zh) 2021-12-17

Similar Documents

Publication Publication Date Title
US11288577B2 (en) Deep long short term memory network for estimation of remaining useful life of the components
CN108038044B (zh) 一种面向连续被监测对象的异常检测方法
CN109905269B (zh) 确定网络故障的方法和装置
US8761909B2 (en) Batch process monitoring using local multivariate trajectories
CN107561997B (zh) 一种基于大数据决策树的电力设备状态监测方法
JP2013025367A (ja) 設備状態監視方法およびその装置
CN111967509A (zh) 一种对工业设备采集的数据进行处理和检测的方法及装置
CN108664603B (zh) 一种修复时序数据的异常聚合值的方法及装置
CN113672600B (zh) 一种异常检测方法及系统
Al-Dabbagh et al. Toward the advancement of decision support tools for industrial facilities: Addressing operation metrics, visualization plots, and alarm floods
CN113806615B (zh) 一种智能it运维系统的kpi异常预警方法
CN113868953B (zh) 工业系统中多机组运行优化方法、装置、系统及存储介质
CN116457802A (zh) 利用未被标记的传感器数据对工业系统中的罕见故障的自动实时检测、预测和阻止
CN118184105B (zh) 一种光学玻璃的智能熔炼温度监测方法及系统
JP2023520066A (ja) 産業用機械学習のためのデータ処理
CN115859200A (zh) 一种数据检测方法及系统
CN116929456A (zh) 机房环境监控方法、装置、设备及存储介质
CN114881167A (zh) 异常检测方法、装置、电子设备和介质
CN117390370A (zh) 基于健康指数的机台预警方法、装置、设备及可读介质
JP2010152431A (ja) 不正アクセス検知装置及び不正アクセス検知プログラム及び記録媒体及び不正アクセス検知方法
CN116049671A (zh) 基于多模型融合的燃气仪表故障检测方法、系统及设备
CN112596081B (zh) 一种基于关联性健康基线的健康状态监测的方法
CN112765219B (zh) 一种跳过平稳区域的流数据异常检测方法
CN116245212A (zh) 基于pca-lstm的电力数据异常检测与预测方法及系统
CN111931798B (zh) 进行冷头状态分类检测和寿命预测的方法

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
GR01 Patent grant
GR01 Patent grant