CN110543965B - 基线预测方法、基线预测装置、电子设备和介质 - Google Patents
基线预测方法、基线预测装置、电子设备和介质 Download PDFInfo
- Publication number
- CN110543965B CN110543965B CN201910658777.XA CN201910658777A CN110543965B CN 110543965 B CN110543965 B CN 110543965B CN 201910658777 A CN201910658777 A CN 201910658777A CN 110543965 B CN110543965 B CN 110543965B
- Authority
- CN
- China
- Prior art keywords
- domain data
- time domain
- baseline
- harmonic
- prediction
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Development Economics (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Testing And Monitoring For Control Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开提供了一种基线预测方法、基线预测装置、电子设备和介质。其中,基线预测方法包括:获取时域数据集合,时域数据集合包括多个时域数据,每个时域数据至少包括指标信息;将时域数据集合转换为频域数据集合,以获得指标信息在频域的基波周期和基波振幅,以及指定个数的谐波周期和谐波振幅;基于基波周期和基波振幅获取第一预测基线,以及基于指定个数的谐波周期和谐波振幅获取第二预测基线;以及基于第一预测基线和第二预测基线生成指标信息的第三预测基线。
Description
技术领域
本公开涉及计算机技术领域,更具体地,涉及一种基线预测方法、基线预测装置、电子设备和介质。
背景技术
近年来,数据中心负责运维管理的范畴和对象呈现较大增长趋势。上层业务的精细化服务需求驱动了底层精细化运维的发展,被控对象的颗粒度越来越细,监控的抽样间隙越来越短,由此形成的指标的数据具有海量、多样性、个性化、快速生成等特征。因此,实现性能异常波动的精细化实时检测,是业务运维稳定性的重要保障。
在实现本公开构思的过程中,发明人发现现有技术中至少存在如下问题。指标的实时监控与告警,关键在于告警阈值的设置。采用人工经验配置固定阈值方式,或者采用历史均值法、中值法配置方式,由于被监控对象数量庞大、种类繁多、个体差异、特征不一致,导致精度不高,极易出现漏报或者误判的现象。
发明内容
有鉴于此,本公开提供了一种用于实现高精度的基线预测,辅助实现指标的实时监控与告警的基线预测方法、基线预测装置、电子设备和介质。
本公开的一个方面提供了一种基线预测方法,包括:获取时域数据集合,时域数据集合包括多个时域数据,每个时域数据包括时间信息、指标信息以及该指标信息的取值;将时域数据集合转换为频域数据集合,以获得指标信息在频域的基波周期和基波振幅,以及指定个数谐波周期和谐波振幅;基于基波周期和基波振幅获取第一预测基线,以及基于指定个数谐波周期和谐波振幅获取指定个数第二预测基线;以及基于第一预测基线和指定个数第二预测基线生成指标信息的第三预测基线。
本公开提供的基线预测方法,对得到的指标信息的历史时序数据集合进行频域转换,得到基波周期和基波振幅,以及指定个数谐波周期和谐波振幅,该基波和指定个数谐波能表征指标信息的取值周期性波动的主要影响因素,同时还可以实现对干扰信息的滤除。因此,可以基于基波和谐波生成精确的预测基线。
根据本公开的实施例,该方法还可以包括:在获得指标信息在频域的基波周期和基波振幅,以及指定个数的谐波周期和谐波振幅之后,根据时域数据集合中与预测时间点相同周期的时间点与该预测时间点之间的时间长度,生成历史周期影响因子;以及基于所述历史周期影响因子对所述基波振幅和指定个数的谐波振幅进行处理,以获得转换基波振幅和指定个数的转换谐波振幅。相应地,所述基于所述基波周期和基波振幅获取第一预测基线,以及基于所述指定个数的谐波周期和谐波振幅获取第二预测基线包括:基于所述基波周期和转换基波振幅获取第一预测基线,以及基于所述指定个数的谐波周期和转换谐波振幅获取第二预测基线。这样基于周期变化因子对第三预测基线进行处理,充分考虑了不同周期之间的波动,部分解决了历史性能漂移的问题,有效提升了预测基线的准确度。
根据本公开的实施例,该方法还可以包括:在获得转换基波振幅和指定个数的转换谐波振幅之后,对所述转换基波振幅和指定个数的转换谐波振幅进行归一化,得到归一化基波振幅和指定个数归一化谐波振幅;所述基于所述基波周期和转换基波振幅获取第一预测基线,以及基于所述指定个数的谐波周期和转换谐波振幅获取第二预测基线包括:基于所述基波周期和归一化基波振幅获取第一预测基线,以及基于所述指定个数的谐波周期和归一化谐波振幅获取第二预测基线。通过上述操作可以对基波振幅和谐波振幅进行归一化,有助于将基波和谐波进行加权叠加。
根据本公开的实施例,将时域数据集合转换为频域数据集合包括:基于快速傅里叶变换将时域数据集合转换为频域数据集合。
根据本公开的实施例,在获取时域数据集合之后,该方法还包括:对时域数据集合中指标信息的取值进行异常数据检测,以得到第一异常时域数据;以及从时域数据集合中去除第一异常时域数据。这样可以实现在得到时域数据集合后,对时域数据进行异常数据剔除,以提升基线预测的准确度。
根据本公开的实施例,该方法还包括:在基于基波周期和基波振幅获取第一预测基线之前,对时域数据集合的指标信息的取值进行异常数据检测,以得到候选异常时域数据;基于指标信息在频域的基波周期和基波振幅对候选异常时域数据进行筛选,以得到第二异常时域数据;以及从时域数据集合中去除第二异常时域数据。由于指标信息的取值在同一周期内具有波动,如果不考虑周期内波动进行异常数据剔除,则可能导致正常数据被误删除。因此,在得到时域数据集合后,对时域数据进行异常数据检测,然后基于周期内波动对候选异常数据进行筛选,提升异常数据检测的准确度。
根据本公开的实施例,对时域数据集合的指标信息的取值进行异常数据检测包括:重复以下步骤生成针对指定指标信息的多个孤立树:从时域数据集合中随机选取针对指定指标信息的第一指定个数时域数据,并基于第一指定个数时域数据生成孤立树;基于多个孤立树生成孤立树森林;计算时域数据的每个指标信息的取值在孤立树森林的多个孤立树中的平均高度值;以及获取平均高度值低于设定阈值的取值所属的时域数据。
本公开的另一个方面提供了一种基线预测装置,包括集合获取模块、频域转换模块、第一基线获取模块和第二基线获取模块。其中,集合获取模块用于获取时域数据集合,时域数据集合包括多个时域数据,每个时域数据包括时间信息、指标信息以及该指标信息的取值。频域转换模块用于将时域数据集合转换为频域数据集合,以获得指标信息在频域的基波周期和基波振幅,以及指定个数谐波周期和谐波振幅。第一基线获取模块用于基于基波周期和基波振幅获取第一预测基线,以及基于指定个数谐波周期和谐波振幅获取指定个数第二预测基线。第二基线获取模块用于基于第一预测基线和指定个数第二预测基线生成指标信息的第三预测基线。其中,各模块可以执行相应的方法的操作,在此不再一一赘述。
本公开的另一方面提供了一种电子设备,包括一个或多个处理器以及存储装置,其中,存储装置用于存储可执行指令,可执行指令在被处理器执行时,实现如上的方法。
本公开的另一方面提供了一种计算机可读存储介质,存储有计算机可执行指令,指令在被执行时用于实现如上的方法。
本公开的另一方面提供了一种计算机程序,计算机程序包括计算机可执行指令,指令在被执行时用于实现如上的方法。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了根据本公开实施例的基线预测方法、基线预测装置、电子设备和介质的应用场景;
图2示意性示出了根据本公开实施例的可以应用基线预测方法、基线预测装置的示例性系统架构;
图3示意性示出了根据本公开实施例的基线预测方法的流程图;
图4示意性示出了根据本公开另一实施例的基线预测方法的流程图;
图5示意性示出了根据本公开实施例的生成指标信息的第三预测基线的流程图;
图6示意性示出了根据本公开实施例的生成指标信息的第三预测基线的示意图;
图7示意性示出了根据本公开实施例的异常数据检测方法的流程图;
图8示意性示出了根据本公开实施例的异常数据检测方法的逻辑;
图9示意性示出了根据本公开另一实施例的异常数据检测方法的流程图;
图10示意性示出了根据本公开另一实施例的异常数据检测方法的逻辑;
图11示意性示出了根据本公开实施例的基线预测装置的框图;以及
图12示意性示出了根据本公开实施例的电子设备的方框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个特征。
动态基线是一种时间序列。预测动态基线用于预测指标的取值的范围。常用的动态基线预测方法有自回归、移动平均、ARIMA(Auto Regression Integrated MovingAverage)、SARIMA(Seasonal ARIMA)、Prophet等模型,现在已经有较成熟的软件包或工具,但这些模型的使用都不可避免周期参数的设置,如周、月、年或节假日等。采用人工方式配置周期参数费时费力,且其周期参数只能为单一周期,而复杂业务指标往往存在多周期。此外,ARIMA等模型要求数据具有连续性,如历史数据存在异常,需要预处理修正后使用,而修正的准确度对于模型的精度影响较大。
本公开的实施例提供了一种基线预测方法、基线预测装置、电子设备和介质。该基线预测方法包括基波和谐波获取过程和基线生成过程。在基波和谐波获取过程中,获取时域数据集合,然后将时域数据集合转换为频域数据集合,以获得指标信息在频域的基波周期和基波振幅,以及指定个数的谐波周期和谐波振幅。在完成基波和谐波获取过程之后,进入基线生成过程,基于基波周期、基波振幅,以及指定个数的谐波周期、谐波振幅分别获取第一预测基线和第二预测基线,然后基于第一预测基线和第二预测基线生成指标信息的第三预测基线。
本公开的实施例提供了一种可以实现动态基线预测的方法,无需人工方式配置周期参数,且周期参数是通过对历史时域数据进行分析得到的,能有效解析出多个起主要影响的周期和该周期的权重,有助于提升动态基线预测的准确度。此外,本公开的实施例还能准确判断并去除异常时域数据以进一步提升基线预测的准确度。
图1示意性示出了根据本公开实施例的基线预测方法、基线预测装置、电子设备和介质的应用场景。
现有技术采集的数据大多都是时域数据,可以通过对时域数据进行分析以预测用户关心的对象的发展趋势。如根据某个指标的历史数据,预测其未来的取值,用于实时监控。当指标的取值与预测取值发生偏离,并且超出一定范围时,便可以及时发现该指标的异常,给出异常提示的报警信息。由这些预测值形成的时间序列,就是指标的动态基线。如图1的左图所示,时域数据集合可以包括多个时域数据,其中,每个时域数据可以包括时间信息、指标信息和对应的取值等,可以对该时域数据集合进行分析以得到用户关心的指标的预测基线。如图1的右图所示,分别为带宽的预测基线和响应时长的预测基线。如果实时获取的响应时长的取值与预测基线上对应的预测值相差超出一定范围时,则当前响应时长可能存在异常,可以对运维人员发送告警信息,以便于运维人员及时对相关设备等进行排查。
图2示意性示出了根据本公开实施例的可以应用基线预测方法、基线预测装置的示例性系统架构。需要注意的是,图2所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图2所示,根据该实施例的系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
终端设备101、102、103通过网络104与服务器105交互,以接收或发送信息等。终端设备101、102、103可以具有多个待监测的指标,并将待检测指标的取值发送给服务器105以便于进行异常检测。
终端设备101、102、103包括但不限于工控机、主机、单片机、智能手机、平板电脑、膝上型便携计算机、数据中心等等。
服务器105可以对时域数据集合进行基线预测。服务器105可以为数据库服务器、后台管理服务器、服务器集群等。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求生成的预测基线等)反馈给终端设备。
需要说明的是,本公开实施例所提供的基线预测方法一般可以由服务器105执行。相应地,本公开实施例所提供的基线预测装置一般可以设置于服务器105中。
应该理解,终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
图3示意性示出了根据本公开实施例的基线预测方法的流程图。
如图3所示,该方法可以包括操作S301~操作S307。
在操作S301,获取时域数据集合,时域数据集合包括多个时域数据,每个时域数据至少包括指标信息。
在本身实施例中,每个时域数据可以包括指标信息、时间信息和指标的取值等。其中,指标信息可以为各种待监测的指标,如CPU使用率、风扇转速、带宽、响应时长、空置时长、负载率、故障频率等。
在操作S303,将时域数据集合转换为频域数据集合,以获得指标信息在频域的基波周期和基波振幅,以及指定个数的谐波周期和谐波振幅。
具体地,将时域数据集合转换为频域数据集合可以包括:基于快速傅里叶变换(Fast Fourier Transform,简称FFT)将时域数据集合转换为频域数据集合。
例如,针对某个指标KPIK取值进行采集,形成离散时域数据集合XK(t)={(t,KPIK,Valuet)|0<t≤T2},其中,其数据采集周期为Ts,则采样频率为Fs=1/Ts,集合内数据点个数N2=T2/Ts。其离散傅立叶变换(Discrete Fourier Transform,简称DFT)的函数表达式如式(1)所示。
DFT的运算复杂度为O(N2),利用快速傅里叶变换FFT,以递归蝶形运算方式,简化运算复杂度,可以将运算复杂度降低为O(N lg N)。N2个数据点经过FFT之后,可以得到N2个FFT结果。
N2个FFT结果里,除了第一个点是直流分量之外,每个点对应XK的一个频率分量,第n个点对应的频率分量Fn=Fs*(n-1)/N2。
每个频率分量的模值对应该频率分量的幅值,并将幅值由大到小进行降序排列,取top M,其对应的频率分量就是基波及指定个数的谐波(在此为关键谐波)的频率fm,由Tm=1/fm计算得到对应的基波周期及关键谐波周期。
在操作S305,基于基波周期和基波振幅获取第一预测基线,以及基于指定个数的谐波周期和谐波振幅获取指定个数的预测基线,例如,第2~第M个预测基线,M为大于等于2的整数。
具体地,可以基于基波周期和基波振幅生成一个波形图,基于指定个数的谐波周期和谐波振幅生成第2~第M个波形图,参考图6上方所示的前三条曲线。此外,也可以基于基波周期和基波振幅生成多个离散点,将多个离散点作为预测基线。
在操作S307,基于第一预测基线和第二预测基线生成指标信息的第三预测基线。
在本实施例中,可以将多条预测曲线进行叠加得到第三预测曲线。此外,也可以对基波和谐波分别设置不同的权重,如基于各自的振幅设置各自的权重,然后基于各自的权重进行叠加,在此不做限定。
本公开实施例提供的基线预测方法针对现有动态基线预测方法的缺陷,提出了一种基于多周期历史学习的指标动态基线预测的方法,具备较好的自学习和自适应能力,时间复杂度低、人工调参依赖性小、算法稳定性好。
图4示意性示出了根据本公开另一实施例的基线预测方法的流程图。
如图4所示,该方法还可以包括操作S401。
在操作S401,在获得指标信息在频域的基波周期和基波振幅,以及指定个数的谐波周期和谐波振幅之后,根据时域数据集合中与预测时间点相同周期时间点与该预测时间点之间的时间长度,生成历史周期影响因子。
具体地,历史上与待预测时间点(待预测时域数据集合中的某个时间点)相同周期时间点,指在时域数据集合中,与待预测时间点的时间间隔等于周期的整数倍数的时间点。即:对于某类指标其待预测的某个时间点t0,其对应的一个波形(基波或者谐波)的周期为Tn,它对应的前1个历史周期时间点t1=t0-Tn,以此类推,对应的前k个历史周期时间点tk=t0-Tn*k。例如,需要预测的时间点t0为某年8月1日00:00:00,周期为24小时,那么t1=该某年7月31日00:00:00。
由于时域数据集合为有限长度,在该集合内可供参考的正常历史周期时间点个数为N个,第N个时间点对应的历史周期影响因子fN由式(2)计算得到。
其中,F1(·)为正比函数,可以是幂次方函数,也可以是线性函数。
然后,可以基于所述历史周期影响因子对所述基波振幅和指定个数的谐波振幅进行处理,以获得转换基波振幅和指定个数的转换谐波振幅。接着,基于所述基波周期和转换基波振幅获取第一预测基线,以及基于所述指定个数的谐波周期和转换谐波振幅获取第二预测基线。然后,就可以基于所述第一预测基线、所述第二预测基线和所述周期变化因子生成所述指标信息的第三预测基线。其中,预测基线可以是由多个离散点构成,如针对某个指标的多个预测取值构成。
具体地,由周期Tn波形和式(3),可以计算得到t0对应的预测数据。
其中,F2(·)为回归函数,x′i表示周期Tn波形在第i个时间点的取值。
通过以上操作可以实现针对待预测时域数据集合中的所有时间点(待预测时间点)的数据进行预测,形成对应的预测基线。
例如,采用本实施例的基线预测方法对服务器进行异常监控时,可以在分钟级用时得到基于动态基线的预测结果,相对于现有的实时异常监控,能以小时级别提前发现异常,并对运维人员进行告警,以避免异常扩大,可有效提升业务运维的稳定性。
图5示意性示出了根据本公开实施例的生成指标信息的第三预测基线的流程图。
如图5所示,生成指标信息的第三预测基线可以包括操作S501~操作S505。
在操作S501,在获得转换基波振幅和指定个数的转换谐波振幅之后,对所述转换基波振幅和指定个数的转换谐波振幅进行归一化,得到归一化基波振幅和指定个数归一化谐波振幅;
具体地,可以通过公式(4)计算归一化基波振幅和归一化谐波振幅。
fi=(Pi-min1≤i≤MPi)/(max1≤i≤MPi-min1≤i≤MPi) (4)
其中,Pi表示基波幅值和指定个数谐波幅值中的一个,min表示最小值,max表示最大值,i为整数。
在操作S503,基于所述基波周期和归一化基波振幅获取第一预测基线,以及基于所述指定个数的谐波周期和归一化谐波振幅获取第二预测基线。
在操作S505,叠加第一预测基线和指定个数的第二预测基线,以生成指标信息的第三预测基线。
具体地,可以通过将基波的取值和对应的多个谐波的取值进行加权求和得到预测基线的取值。
图6示意性示出了根据本公开实施例的生成指标信息的第三预测基线的示意图。
如图6所示,取Top3的振幅对应的波分别作为基波和谐波。其中,第一个波形为基波,第二个波形和第三个波形为谐波。将这三个波叠加即可得到第三预测基线,如第四个波所示。
图7示意性示出了根据本公开实施例的异常数据检测方法的流程图。
如图7所示,在本实施例中,每个时域数据还包括指标信息的取值。相应地,在获取时域数据集合之后,该方法还包括操作S701~操作S703。
在操作S701,对指标信息的取值进行异常数据检测,以得到第一异常时域数据。
在本身实施例中,可以将波动幅度超过预设阈值的数据作为异常数据。当然,也可以将符合特定规律的数据作为异常数据。此外,还可以采用现有技术中用于确定异常数据的方法。
在操作S703,从时域数据集合中去除第一异常时域数据。
图8示意性示出了根据本公开实施例的异常数据检测方法的逻辑。
如图8所示,对数据源进行数据采集,如给被监测的对象发送数据请求,以获取时域数据集合,时域数据集合中包括待监测的指标信息。从时域数据集合中提取出包括待监测的指标信息的时域数据。然后,通过对包括待监测的指标信息的时域数据进行全局异常检测,以得到异常时域数据。这样就可以从时域数据集合中删除异常时域数据,有效提升了样本的准确率,有助于提升基线的准确度。
图9示意性示出了根据本公开另一实施例的异常数据检测方法的流程图。
如图9所示,每个时域数据还包括指标信息的取值,在基于基波周期和基波振幅获取第一预测基线之前,该方法还包括操作S901~操作S905。
在操作S901,对时域数据集合的指标信息的取值进行异常数据检测,以得到候选异常时域数据。具体参考操作S701的相关说明,在此不再赘述。
在操作S903,基于指标信息在频域的基波周期和基波振幅对候选异常时域数据进行筛选,以得到第二异常时域数据。
具体地,现有技术可以基于预设异常阈值以从数据集合中确定异常数据,本实施例中还进一步考虑了周期波动对预设异常阈值的影响。如某些时段中指标的取值会高于或低于其它时段中指标的取值,如果按照统一的预设异常阈值则会导致误判。因此,可以基于指标信息在频域的基波周期和基波振幅对候选异常时域数据进行筛选,以得到第二异常时域数据,将正常时域数据从候选异常时域数据中筛除。如基于基波,或者基波和指定个数谐波对预设异常阈值进行修正。
在操作S905,从时域数据集合中去除第二异常时域数据。
图10示意性示出了根据本公开另一实施例的异常数据检测方法的逻辑。
如图10所示,对数据源进行数据采集,如给被监测的对象发送数据请求,以获取时域数据集合,时域数据集合中包括待监测的指标信息。从时域数据集合中提取出包括待监测的指标信息的时域数据。然后,通过对包括待监测的指标信息的时域数据进行全局异常检测,以得到候选异常时域数据。然后,至少基于基波周期和基波振幅等对候选异常数据进行异常过滤,得到异常时域数据。这样就可以从时域数据集合中删除异常时域数据,有效提升了样本的准确率,有助于提升基线的准确度。
具体地,对时域数据集合的指标信息的取值进行异常数据检测可以包括如下操作。
首先,重复以下步骤生成针对指定指标信息的多个孤立树:从时域数据集合中随机选取针对指定指标信息的第一指定个数时域数据,并基于第一指定个数时域数据生成孤立树。
然后,基于多个孤立树生成孤立树森林。
接着,计算时域数据的每个指标信息的取值在孤立树森林的多个孤立树中的平均高度值。
然后,获取平均高度值低于设定阈值的取值所属的时域数据。
以下以一个具体实施例对异常数据检测进行说明。
从数据源获取某监控对象S的L项指标(KPI1,KPI2,...,KPIL)的历史数据,基于此可以形成历史时域数据集合KPISet={(t,KPI1t,KPI2t,...,KPILt)|0<t≤T},1≤i≤N。源数据生成周期为Ts,则采样频率为Fs=1/Ts,集合内数据点个数N=T/Ts。
针对一段时间的历史时域数据集合KPISet1={(t,KPI1t,KPI2t,...,KPILt)|0<t≤T1},集合内数据个数N1=T1/Ts,通过基于划分的孤立森林方法,快速发现全局的候选异常时域数据。其中,孤立森林法可以通过以下操作生成:首先,生成孤立树iTree。在生成孤立树iTree时,通过并行计算,获得m个iTree,共同组成一个孤立树的集合,即孤立森林iForest。
为了计入周期波动带来的影响,可以针对更长历史时间T2内的时域数据集合KPISet2={(t,KPI1t,KPI2t,...,KPILt)|0<t≤T2},基于快速傅里叶变换方法,进行周期发现,集合内数据个数N2=T2/Ts。为便于后续计算,T2取值可以为2的整数次幂,如果不是2的整数次幂,可以在后面做补零处理。其中,周期发现的结果可以为基波周期、基波振幅、关键谐波周期和关键谐波振幅等,其获取方法可以参考说明书的操作S303相关内容,在此不再赘述。
接着,可以基于周期发现的结果对候选异常时域数据集合KPISets={(ti,KPI1i,KPI2i,...,KPILi)|0<i≤S},对其中每个KPI维度的取值Xk(t),基于周期发现的结果(如基波周期、基波振幅、关键谐波周期和关键谐波振幅等),判断候选异常时域数据的取值波动的振幅是否符合周期性,是否存在合理性,筛除误判的候选异常时域数据。
孤立树可以通过以下方式生成:操作a、从KPISet1中随机选择n个样本点作为子集,0<n≤N1,放入树的根节点。操作b、随机指定一个KPI维度,例如K1,在当前节点数据中,随机产生一个切割点p,p的取值介于当前节点数据中选定KPI维度(即K1)的最大值和最小值之间。操作c、以此切割点p生成一个超平面,将当前节点的数据空间划分为两个子空间(子节点),把选定维度(即K1)里小于p的数据点放在当前节点的左子节点,把大于等于p的数据放在当前节点的右子节点。操作d、在子节点中,递归操作b和操作c,不断构造新的子节点,直到子节点中无法再继续切割(只有一个数据)或子节点已到达限定高度。
全局的候选异常时域数据可以通过以下操作来确定。首先,对于每个数据点KPISet1(t),遍历其在每棵孤立树iTree中的高度。然后,计算KPISet1(t)在每棵iTree中的平均高度值APL。接着,如果KPISet1(t)的APL低于边界值,则判断其为全局的候选异常时域数据。这样就可以将所有全局的候选异常时域数据(如S个)形成一个全局的候选异常数据集合KPISets={(ti,KPI1i,KPI2i,...,KPILi)|0<i≤S}。
此外,还可以基于周期统计值对全局的候选异常数据集合KPISets进行候选异常数据进行筛选。具体地,首先,从该候选异常时域数据的时间点t,回溯P个周期,定位到对应的每个周期的时间点tj,为避免业务运行偏差导致的相位噪声,将时间点tj扩展到其时间邻域(tlj,tuj),取所有周期邻域内的KPI取值xj,计算其历史参考均值Mk与历史参考标准差Sk。然后,计算Xk(t)与历史参考均值Mk的偏差,判断是否超过指定倍数(如2倍)的历史参考标准差Sk,如果未超出,则存在误判,将其从KPISets中过滤。
通过以上操作即可实现基于周期性波动,对孤独森林法得到的候选异常时域数据进行筛选,以得到异常时域数据,便于从时域数据集合中剔除异常时域数据,提升时域数据集合的有效性。
图11示意性示出了根据本公开实施例的基线预测装置的框图。
如图11所示,本公开的另一个方面提供了一种基线预测装置1100,该装置1100可以包括集合获取模块1110、频域转换模块1120、第一基线获取模块1130和第二基线获取模块1140。
其中,集合获取模块1110用于获取时域数据集合,时域数据集合包括多个时域数据,每个时域数据至少包括指标信息。
频域转换模块1120用于将时域数据集合转换为频域数据集合,以获得指标信息在频域的基波周期和基波振幅,以及指定个数的谐波周期和谐波振幅。
第一基线获取模块1130用于基于基波周期和基波振幅获取第一预测基线,以及基于指定个数的谐波周期和谐波振幅获取第二预测基线。
第二基线获取模块1140用于基于第一预测基线和第二预测基线生成指标信息的第三预测基线。
需要说明的是,装置部分实施例中各模块/单元/子单元等的实施方式、解决的技术问题、实现的功能、以及达到的技术效果分别与方法部分实施例中各对应的步骤的实施方式、解决的技术问题、实现的功能、以及达到的技术效果相同或类似。各模块可执行的操作参考说明书的方法相关部分,在此不再一一赘述。
根据本公开的实施例的模块、单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,集合获取模块1110、频域转换模块1120、第一基线获取模块1130和第二基线获取模块1140中的任意多个可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,集合获取模块1110、频域转换模块1120、第一基线获取模块1130和第二基线获取模块1140中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,集合获取模块1110、频域转换模块1120、第一基线获取模块1130和第二基线获取模块1140中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
图12示意性示出了根据本公开实施例的电子设备的方框图。图12示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图12所示,根据本公开实施例的电子设备1200包括处理器1201,其可以根据存储在只读存储器(ROM)1202中的程序或者从存储部分1208加载到随机访问存储器(RAM)1203中的程序而执行各种适当的动作和处理。处理器1201例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器1201还可以包括用于缓存用途的板载存储器。处理器1201可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 1203中,存储有电子设备1200操作所需的各种程序和数据。处理器1201、ROM 1202以及RAM 1203通过总线1204彼此相连。处理器1201通过执行ROM 1202和/或RAM1203中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,程序也可以存储在除ROM 1202和RAM 1203以外的一个或多个存储器中。处理器1201也可以通过执行存储在一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,电子设备1200还可以包括输入/输出(I/O)接口1205,输入/输出(I/O)接口1205也连接至总线1204。电子设备1200还可以包括连接至I/O接口1205的以下部件中的一项或多项:包括键盘、鼠标等的输入部分1206;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1207;包括硬盘等的存储部分1208;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1209。通信部分1209经由诸如因特网的网络执行通信处理。驱动器1210也根据需要连接至I/O接口1205。可拆卸介质1211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1210上,以便于从其上读出的计算机程序根据需要被安装入存储部分1208。
根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1209从网络上被下载和安装,和/或从可拆卸介质1211被安装。在该计算机程序被处理器1201执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 1202和/或RAM 1203和/或ROM 1202和RAM 1203以外的一个或多个存储器。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。
Claims (9)
1.一种由电子设备执行的基线预测方法,所述基线用于指标的实时监控与告警,包括:
获取时域数据集合,所述时域数据集合包括多个时域数据,每个时域数据至少包括指标信息;
将所述时域数据集合转换为频域数据集合,以获得指标信息在频域的基波周期和基波振幅,以及指定个数的谐波周期和谐波振幅;
在获得指标信息在频域的基波周期和基波振幅,以及指定个数的谐波周期和谐波振幅之后,根据时域数据集合中与预测时间点相同周期的时间点与该预测时间点之间的时间长度,生成历史周期影响因子;
基于所述历史周期影响因子对所述基波振幅和指定个数的谐波振幅进行处理,以获得转换基波振幅和指定个数的转换谐波振幅;
基于所述基波周期和基波振幅获取第一预测基线,以及基于所述指定个数的谐波周期和谐波振幅获取第二预测基线,包括:基于所述基波周期和转换基波振幅获取第一预测基线,以及基于所述指定个数的谐波周期和转换谐波振幅获取第二预测基线;以及
基于所述第一预测基线和所述第二预测基线生成所述指标信息的第三预测基线。
2.根据权利要求1所述的方法,还包括:
在获得转换基波振幅和指定个数的转换谐波振幅之后,对所述转换基波振幅和指定个数的转换谐波振幅进行归一化,得到归一化基波振幅和指定个数归一化谐波振幅;
所述基于所述基波周期和转换基波振幅获取第一预测基线,以及基于所述指定个数的谐波周期和转换谐波振幅获取第二预测基线包括:基于所述基波周期和归一化基波振幅获取第一预测基线,以及基于所述指定个数的谐波周期和归一化谐波振幅获取第二预测基线。
3.根据权利要求1所述的方法,其中,所述将所述时域数据集合转换为频域数据集合包括:基于快速傅里叶变换将所述时域数据集合转换为频域数据集合。
4.根据权利要求1所述的方法,其中:
所述每个时域数据还包括指标信息的取值;
所述方法还包括:在获取时域数据集合之后:
对所述指标信息的取值进行异常数据检测,以得到第一异常时域数据;以及
从所述时域数据集合中去除所述第一异常时域数据。
5.根据权利要求1所述的方法,其中:
所述每个时域数据还包括指标信息的取值;
所述方法还包括:在基于所述基波周期和基波振幅获取第一预测基线之前,
对所述时域数据集合的指标信息的取值进行异常数据检测,以得到候选异常时域数据;
至少基于所述指标信息在频域的基波周期和基波振幅对所述候选异常时域数据进行筛选,以得到第二异常时域数据;以及
从所述时域数据集合中去除所述第二异常时域数据。
6.根据权利要求4或5所述的方法,其中,所述对所述时域数据集合的指标信息的取值进行异常数据检测包括:
重复以下步骤生成针对指定指标信息的多个孤立树:从所述时域数据集合中随机选取针对指定指标信息的第一指定个数时域数据,并基于所述第一指定个数时域数据生成孤立树;
基于所述多个孤立树生成孤立树森林;
计算所述时域数据的每个指标信息的取值在所述孤立树森林的多个孤立树中的平均高度值;以及
获取平均高度值低于设定阈值的取值所属的时域数据。
7.一种基线预测装置,所述基线用于指标的实时监控与告警,包括:
集合获取模块,用于获取时域数据集合,所述时域数据集合包括多个时域数据,每个时域数据至少包括指标信息;
频域转换模块,用于:将所述时域数据集合转换为频域数据集合,以获得指标信息在频域的基波周期和基波振幅,以及指定个数的谐波周期和谐波振幅;在获得指标信息在频域的基波周期和基波振幅,以及指定个数的谐波周期和谐波振幅之后,根据时域数据集合中与预测时间点相同周期的时间点与该预测时间点之间的时间长度,生成历史周期影响因子;以及基于所述历史周期影响因子对所述基波振幅和指定个数的谐波振幅进行处理,以获得转换基波振幅和指定个数的转换谐波振幅;
第一基线获取模块,用于基于所述基波周期和基波振幅获取第一预测基线,以及基于所述指定个数的谐波周期和谐波振幅获取第二预测基线,包括:基于所述基波周期和转换基波振幅获取第一预测基线,以及基于所述指定个数的谐波周期和转换谐波振幅获取第二预测基线;以及
第二基线获取模块,用于基于所述第一预测基线和所述第二预测基线生成所述指标信息的第三预测基线。
8.一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储可执行指令,所述可执行指令在被所述处理器执行时,实现根据权利要求1~6中任一项所述的方法。
9.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时实现根据权利要求1~6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910658777.XA CN110543965B (zh) | 2019-07-19 | 2019-07-19 | 基线预测方法、基线预测装置、电子设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910658777.XA CN110543965B (zh) | 2019-07-19 | 2019-07-19 | 基线预测方法、基线预测装置、电子设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110543965A CN110543965A (zh) | 2019-12-06 |
CN110543965B true CN110543965B (zh) | 2023-01-06 |
Family
ID=68710270
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910658777.XA Active CN110543965B (zh) | 2019-07-19 | 2019-07-19 | 基线预测方法、基线预测装置、电子设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110543965B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112256732B (zh) * | 2020-09-25 | 2023-10-24 | 北京五八信息技术有限公司 | 一种异常检测方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016158477A (ja) * | 2015-02-24 | 2016-09-01 | 日新電機株式会社 | ディジタル形保護リレー |
CN106771895A (zh) * | 2016-11-25 | 2017-05-31 | 国网上海市电力公司 | 一种基于磁场谐波检测的电缆老化检测方法 |
CN107733737A (zh) * | 2017-10-10 | 2018-02-23 | 国网天津市电力公司 | 一种监控网络流量异常的方法 |
CN107976304A (zh) * | 2016-10-21 | 2018-05-01 | 计算系统有限公司 | 基于对信号的周期性信息进行分析的机器故障预测 |
CN109542740A (zh) * | 2017-09-22 | 2019-03-29 | 阿里巴巴集团控股有限公司 | 异常检测方法及装置 |
-
2019
- 2019-07-19 CN CN201910658777.XA patent/CN110543965B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016158477A (ja) * | 2015-02-24 | 2016-09-01 | 日新電機株式会社 | ディジタル形保護リレー |
CN107976304A (zh) * | 2016-10-21 | 2018-05-01 | 计算系统有限公司 | 基于对信号的周期性信息进行分析的机器故障预测 |
CN106771895A (zh) * | 2016-11-25 | 2017-05-31 | 国网上海市电力公司 | 一种基于磁场谐波检测的电缆老化检测方法 |
CN109542740A (zh) * | 2017-09-22 | 2019-03-29 | 阿里巴巴集团控股有限公司 | 异常检测方法及装置 |
CN107733737A (zh) * | 2017-10-10 | 2018-02-23 | 国网天津市电力公司 | 一种监控网络流量异常的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110543965A (zh) | 2019-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110362612B (zh) | 由电子设备执行的异常数据检测方法、装置和电子设备 | |
US20210089917A1 (en) | Heuristic Inference of Topological Representation of Metric Relationships | |
US10061677B2 (en) | Fast automated detection of seasonal patterns in time series data without prior knowledge of seasonal periodicity | |
US11030032B2 (en) | System and method for transforming observed metrics into detected and scored anomalies | |
US10740692B2 (en) | Machine-learning and deep-learning techniques for predictive ticketing in information technology systems | |
US10210189B2 (en) | Root cause analysis of performance problems | |
CN111309539A (zh) | 一种异常监测方法、装置和电子设备 | |
US11165799B2 (en) | Anomaly detection and processing for seasonal data | |
US20200259725A1 (en) | Methods and systems for online monitoring using a variable data | |
CN105071983A (zh) | 一种面向云计算在线业务的异常负载检测方法 | |
US11416325B2 (en) | Machine-learning and deep-learning techniques for predictive ticketing in information technology systems | |
CN106598822B (zh) | 一种用于容量评估的异常数据检测方法及装置 | |
US11796993B2 (en) | Systems, methods, and devices for equipment monitoring and fault prediction | |
US20170279669A1 (en) | Intelligent configuration system for alert and performance monitoring | |
CN112988509A (zh) | 一种告警消息过滤方法、装置、电子设备及存储介质 | |
CN110543965B (zh) | 基线预测方法、基线预测装置、电子设备和介质 | |
CN110889597A (zh) | 业务时序指标异常检测方法及装置 | |
CN110677271B (zh) | 基于elk的大数据告警方法、装置、设备及存储介质 | |
CN114090377A (zh) | 一种数据监控方法及装置 | |
Mendoza et al. | Machine learning for anomaly detection on VM and host performance metrics | |
JP2020009325A (ja) | 異常検知プログラム、異常検知方法及び異常検知装置 | |
CN110598415B (zh) | 一种安全漏洞应急响应触发判断方法及装置 | |
WO2023043425A1 (en) | Components deviation determinations | |
CN116932326A (zh) | 服务器故障监测方法、装置、设备、介质和程序产品 | |
CN117667657A (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 |