一种用于容量评估的异常数据检测方法及装置与流程

文档序号:17772799发布日期:2019-05-28 19:38阅读:177来源:国知局
一种用于容量评估的异常数据检测方法及装置与流程

本申请涉及数据处理领域,特别是涉及一种用于容量评估的异常数据检测方法及装置。



背景技术:

在基于网络的系统中,为了保证系统的可用性,通常会对系统进行容量评估。容量评估的主要过程是,定义多个系统性能指标,采集系统中的设备的性能数据,通过分析这些性能数据来预测前述性能指标在未来的变化趋势;根据预测结果评估当前系统容量(即系统中的各种软硬件资源)是否满足未来的需求。

在容量评估过程中,需要对异常数据进行检测。异常数据通常是由于系统发布、更新或故障等系统变动事件导致的。因此,异常数据并不能够反映出系统在未来时间的变化趋势,使用含有异常数据的性能数据进行容量评估的结果也不准确从而有可能导致系统没有足够的软硬件资源提供服务,可用性会降低,用户体验会变差;或者导致系统中软硬件资源的浪费,增加系统的运营成本。



技术实现要素:

本申请的目的是提供一种用于容量评估的异常数据检测方法及装置,能够通过对采集到的性能数据进行分类,对分类后的性能数据采用异常检测参数不同的异常检测算法进行异常数据检测,以提高现有技术中对于异常数据检测的准确度。。

为实现上述目的,本申请提供了如下方案:

根据本申请的第一方面的第一种可能的实现方式,本申请提供一种用于容量评估的异常数据检测方法,包括:

获取系统在连续的多个周期内的历史性能数据;

从所述历史性能数据中确定至少一个历史性能变动数据,所述每一个历史性能变动数据与另外的所述历史性能数据的相似度小于预设阈值;

将所有的所述历史性能数据划分为第一数据段和第二数据段,所述第一数据段中包含至少一个所述历史性能变动数据,所述第二数据段中不包含所述历史性能变动数据;

采用第一异常检测算法检测所述第一数据段中的异常数据;

采用第二异常检测算法检测所述第二数据段中的异常数据;

其中,所述第二异常检测算法的异常检测置信度高于所述第一异常检测算法的异常检测置信度。

结合第一方面的第二种可能的实现方式,所述从所述历史性能数据中确定至少一个历史性能变动数据,具体包括:

计算每一个历史性能数据与另外的全部历史性能数据中的每一个历史性能数据之间的相似度;

将相似度小于预设阈值的历史性能数据确定为所述历史性能变动数据。

结合第一方面的第二种可能的实现方式的第一种具体实现方式,所述将相似度小于预设阈值的历史性能数据确定为所述历史性能变动数据之前,还包括:

获取所述系统的系统变动事件信息,所述系统变动事件至少包括系统变动事件的系统变动时间信息;

确定所述相似度小于预设阈值的历史性能数据的性能变动时间信息;

从所述相似度小于预设阈值的历史性能数据中,确定所述性能变动时间信息与所述系统变动时间信息相对应的第一历史性能数据;

所述将相似度小于预设阈值的历史性能数据确定为所述历史性能变动数据,具体包括:

将所述第一历史性能数据确定为所述历史性能变动数据。

结合第一方面的第二种可能的实现方式的第一种具体实现方式的第一种更具体的实现方式,所述确定所述相似度小于预设阈值的历史性能数据的性能变动时间信息之后,还包括:

从所述相似度小于预设阈值的历史性能数据中,确定所述性能变动时间信息与所述系统变动时间信息不对应的第二历史性能数据;

所述将相似度小于预设阈值的历史性能数据确定为所述历史性能变动数据,具体包括:

将所述第二历史性能数据中符合预设策略的数据确定为所述历史性能变动数据。

结合第一方面的第二种可能的实现方式的第一种具体实现方式的第二种更具体的实现方式,所述确定所述相似度小于预设阈值的历史性能数据的性能变动时间信息之后,还包括:

从所述相似度小于预设阈值的历史性能数据中,确定所述性能变动时间信息与所述系统变动时间信息不对应的第二历史性能数据;

所述将相似度小于预设阈值的历史性能数据确定为所述历史性能变动数据,具体包括:

显示关于所述第二历史性能数据的询问信息,所述询问信息用于表示询问用户是否将所述第二历史性能数据确定为所述历史性能变动数据;

获取所述用户输入的确定操作;

将所述确定操作指示的所述第二历史性能数据确定为所述历史性能变动数据。

结合第一方面的第三种可能的实现方式,所述历史性能数据为一个周期内按照时间顺序排列的数据点构成的数据序列,所述将所有的所述历史性能数据划分为第一数据段和第二数据段,具体包括:

按照生成时间由先到后的顺序,对包含n个所述历史性能变动数据在内的全部历史性能数据进行排序;

将每个所述历史性能变动数据的最后一个数据点作为第一数据段的右端点,得到n个第一数据段;生成时间最靠后的所述历史性能变动数据之后的历史性能数据属于所述第二数据段。

结合第一方面的第二种可能的实现方式的第一种具体实现方式的第三种更具体的实现方式,所述确定所述性能变动时间信息与所述系统变动时间信息相对应的第一历史性能数据之后,还包括:

对于与一个系统变动时间信息相对应的多个第一历史性能数据,按照生成时间由先到后的顺序进行排序;

所述将所述第一历史性能数据确定为所述历史性能变动数据,具体包括:

将生成时间最靠后的第一历史性能数据确定为所述历史性能变动数据。

结合第一方面的第四种可能的实现方式,所述历史性能数据为一个周期内按照时间顺序排列的数据点构成的数据序列,所述将所有的所述历史性能数据划分为第一数据段和第二数据段,具体包括:

按照生成时间由先到后的顺序,对包含n个所述历史性能变动数据在内的全部历史性能数据进行排序;

按照生成时间由先到后的顺序,对n个所述历史性能变动数据进行排序,得到排序序号;

对于排序序号为奇数的奇数类历史性能变动数据,将所述奇数类历史性能变动数据的第一个数据点的前一个数据点作为第二数据段的右端点;对于排序序号为偶数的偶数类历史性能变动数据,将所述偶数类历史性能变动数据的最后一个数据点作为第一数据段的右端点;共划分得到n+1个数据段,所述n+1个数据段按照历史性能数据的生成时间由先到后的顺序排列时,排序序号为奇数的数据段为所述第二数据段,排序序号为偶数的数据段为所述第一数据段。

结合第一方面的第二种可能的实现方式的第一种具体实现方式的第四种更具体的实现方式,所述确定所述性能变动时间信息与所述系统变动时间信息相对应的第一历史性能数据之后,还包括:

对于所述第一历史性能数据,按照生成时间由先到后的顺序进行编号;

所述将所述第一历史性能数据确定为所述历史性能变动数据,具体包括:

将与相邻的下一个第一历史性能数据的编号的差值大于预设差值的第一历史性能数据确定为所述历史性能变动数据。

根据本申请的第二方面的第一种可能的实现方式,本申请提供一种用于容量评估的异常数据检测装置,包括:

获取单元,用于获取系统在连续的多个周期内的历史性能数据;

处理单元,用于从所述历史性能数据中确定至少一个历史性能变动数据,所述每一个历史性能变动数据与另外的所述历史性能数据的相似度小于预设阈值;

将所有的所述历史性能数据划分为第一数据段和第二数据段,所述第一数据段中包含至少一个所述历史性能变动数据,所述第二数据段中不包含所述历史性能变动数据;

采用第一异常检测算法检测所述第一数据段中的异常数据;

采用第二异常检测算法检测所述第二数据段中的异常数据;

其中,所述第二异常检测算法的异常检测置信度高于所述第一异常检测算法的异常检测置信度。

结合第二方面的第二种可能的实现方式,所述处理单元,具体用于:

计算每一个历史性能数据与另外的全部历史性能数据中的每一个历史性能数据之间的相似度;

将相似度小于预设阈值的历史性能数据确定为所述历史性能变动数据。

结合第二方面的第二种可能的实现方式的第一种具体实现方式,所述获取单元还用于:

在将相似度小于预设阈值的历史性能数据确定为所述历史性能变动数据之前,获取所述系统的系统变动事件信息,所述系统变动事件至少包括系统变动事件的系统变动时间信息;

所述处理单元,具体用于:

确定所述相似度小于预设阈值的历史性能数据的性能变动时间信息;

从所述相似度小于预设阈值的历史性能数据中,确定所述性能变动时间信息与所述系统变动时间信息相对应的第一历史性能数据;

将所述第一历史性能数据确定为所述历史性能变动数据。

结合第二方面的第二种可能的实现方式的第一种具体实现方式的第一种更具体的实现方式,所述处理单元还用于:

在确定所述相似度小于预设阈值的历史性能数据的性能变动时间信息之后,从所述相似度小于预设阈值的历史性能数据中,确定所述性能变动时间信息与所述系统变动时间信息不对应的第二历史性能数据;

将所述第二历史性能数据中符合预设策略的数据确定为所述历史性能变动数据。

结合第二方面的第二种可能的实现方式的第一种具体实现方式的第二种更具体的实现方式,所述处理单元还用于:

在确定所述相似度小于预设阈值的历史性能数据的性能变动时间信息之后,从所述相似度小于预设阈值的历史性能数据中,确定所述性能变动时间信息与所述系统变动时间信息不对应的第二历史性能数据;

所述装置,还包括:

显示单元,用于显示关于所述第二历史性能数据的询问信息,所述询问信息用于表示询问用户是否将所述第二历史性能数据确定为所述历史性能变动数据;

所述获取单元,还用于获取所述用户输入的确定操作;

所述处理单元,具体用于将所述确定操作指示的所述第二历史性能数据确定为所述历史性能变动数据。

结合第二方面的第三种可能的实现方式,所述历史性能数据为一个周期内按照时间顺序排列的数据点构成的数据序列,所述处理单元,具体用于:

按照生成时间由先到后的顺序,对包含n个所述历史性能变动数据在内的全部历史性能数据进行排序;

将每个所述历史性能变动数据的最后一个数据点作为第一数据段的右端点,得到n个第一数据段;生成时间最靠后的所述历史性能变动数据之后的历史性能数据属于所述第二数据段。

结合第二方面的第二种可能的实现方式的第一种具体实现方式的第三种更具体的实现方式,所述处理单元还用于:

在确定所述性能变动时间信息与所述系统变动时间信息相对应的第一历史性能数据之后,对于与一个系统变动时间信息相对应的多个第一历史性能数据,按照生成时间由先到后的顺序进行排序;

所述将所述第一历史性能数据确定为所述历史性能变动数据,具体包括:

将生成时间最靠后的第一历史性能数据确定为所述历史性能变动数据。

结合第二方面的第四种可能的实现方式,所述历史性能数据为一个周期内按照时间顺序排列的数据点构成的数据序列,所述处理单元具体用于:

按照生成时间由先到后的顺序,对包含n个所述历史性能变动数据在内的全部历史性能数据进行排序;

按照生成时间由先到后的顺序,对n个所述历史性能变动数据进行排序,得到排序序号;

对于排序序号为奇数的奇数类历史性能变动数据,将所述奇数类历史性能变动数据的第一个数据点的前一个数据点作为第二数据段的右端点;对于排序序号为偶数的偶数类历史性能变动数据,将所述偶数类历史性能变动数据的最后一个数据点作为第一数据段的右端点;共划分得到n+1个数据段,所述n+1个数据段按照历史性能数据的生成时间由先到后的顺序排列时,排序序号为奇数的数据段为所述第二数据段,排序序号为偶数的数据段为所述第一数据段。

结合第二方面的第二种可能的实现方式的第一种具体实现方式的第四种更具体的实现方式,所述处理单元还用于:

在确定所述性能变动时间信息与所述系统变动时间信息相对应的第一历史性能数据之后,对于所述第一历史性能数据,按照生成时间由先到后的顺序进行编号;

将与相邻的下一个第一历史性能数据的编号的差值大于预设差值的第一历史性能数据确定为所述历史性能变动数据。

根据本申请提供的具体实施例,本申请公开了以下技术效果:

本申请公开的用于容量评估的异常数据检测方法或装置,通过从所述历史性能数据中确定至少一个历史性能变动数据;将所有的所述历史性能数据划分为第一数据段和第二数据段,所述第一数据段中包含至少一个所述历史性能变动数据,所述第二数据段中不包含所述历史性能变动数据;采用第一异常检测算法检测所述第一数据段中的异常数据;采用第二异常检测算法检测所述第二数据段中的异常数据;能够采用异常检测置信度与分类后的性能数据相匹配的异常检测算法进行异常数据检测,提高对于异常数据检测的准确度。。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的用于容量评估的异常数据检测方法的流程图;

图2为本发明实施例提供的另一种用于容量评估的异常数据检测方法的流程图;

图3为本发明实施例提供的另一种用于容量评估的异常数据检测方法的流程图;

图4为本申请中根据系统变动事件信息确定历史性能变动数据的流程图;

图5为本发明实施例提供的用于容量评估的异常数据检测装置的结构图;

图6为本申请的计算节点的结构图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。

图1为本发明实施例提供的用于容量评估的异常数据检测方法的流程图。如图1所示,该方法可以包括:

步骤101:获取系统在连续的多个周期内的历史性能数据,所述系统为容量评估过程所针对的系统;

所述周期可以是以天为单位的,或者可以是以小时、一周为单位。所述历史性能数据,可以包括应用性能数据和资源性能数据。应用性能数据可以用于从应用层面衡量系统性能。例如,所述应用性能数据可以是,在线用户数、每秒请求数(Request Per Second,RPS)、每秒的吞吐量(Throughput Per Second,TPS)等。资源性能数据可以用于从资源层面衡量系统性能。例如,所述资源性能数据可以是,CPU使用率、内存使用率、磁盘使用率等。

假设历史性能数据采集设备的采集频率为10分钟一次,每次采集得到一个历史性能采样数据,历史性能采样数据的周期为1天,连续采集90天,则共采集到12960个数据点(即历史性能采样数据)。一个周期包含的数据点为144,因此,历史性能采样数据可以被分成90个子序列(即历史性能数据),其中,每个子序列分别包含144个历史性能采样数据,具体的:

子序列1:数据点1,……,数据点144

……

子序列90:数据点12817,……,数据点12960。

所述系统在运行过程中,可以采用数据记录设备对系统运行过程中的历史性能数据进行记录。

步骤102:从所述历史性能数据中确定至少一个历史性能变动数据,所述历史性能变动数据与另外的所述历史性能数据的相似度小于预设阈值;

当所述系统出现异常,或者,所述系统中的相关程序被发布或更新,则通常会导致性能数据出现变动。而出现变动的数据,与未发生变动的数据相比,两者的相似度通常会小于预设阈值。因此,本实施例中,可以采用计算数据间的相似度的方式,从所述历史性能数据中确定历史性能变动数据。

以前面提到的子序列20为例,可以分别计算子序列20与另外的89个子序列的相似度,得到89个相似度数据。如果89个相似度数据均小于预设阈值,则可以确定子序列20为历史性能变动数据。

步骤103:将所有的所述历史性能数据划分为第一数据段和第二数据段,所述第一数据段中包含至少一个所述历史性能变动数据,所述第二数据段中不包含所述历史性能变动数据;

步骤104:采用第一异常检测算法检测所述第一数据段中的异常数据;

步骤105:采用第二异常检测算法检测所述第二数据段中的异常数据;

其中,所述第二异常检测算法的异常检测置信度高于所述第一异常检测算法的异常检测置信度。

所述第一异常检测算法与所述第二异常检测算法可以是原理相同的算法。可以为所述第一异常检测算法设置第一显著性水平,为所述第二异常检测算法设置第二显著性水平,所述第一显著性水平大于所述第二显著性水平。

由于所述第一数据段中存在历史性能变动数据,因此,所述历史性能变动数据被检测为异常数据的概率较高,进而可以采用异常检测置信度较低的第一异常检测算法对所述第一数据段进行检测。由于所述第二数据段中不存在历史性能变动数据,因此,所述第二数据段中检测到的异常数据,有比较高的概率是真正的异常数据,进而可以采用异常检测置信度较高的第二异常检测算法。

综上所述,本实施例中,通过从所述历史性能数据中确定历史性能变动数据;根据所述历史性能变动数据,将所述历史性能数据划分为第一数据段和第二数据段,所述第一数据段中包含至少一个所述历史性能变动数据,所述第二数据段中不包含所述历史性能变动数据;采用第一异常检测算法检测所述第一数据段中的异常数据;采用第二异常检测算法检测所述第二数据段中的异常数据;能够采用异常检测置信度与分类后的性能数据相匹配的异常检测算法进行异常数据检测,提高对于异常数据检测的准确度。

图2为本发明实施例提供的另一种用于容量评估的异常数据检测方法的流程图。如图2所示,该方法可以包括:

步骤201:容量评估系统获取系统配置信息。所述系统配置信息可以包括至少一个待评估的系统性能指标,还可以包括评估用时间窗口等信息。所述待评估的系统性能指标,可以表示需要获取的历史性能数据是哪类数据。所述历史性能数据可以分为两类:应用性能数据和资源性能数据。所述评估用时间窗口,指的是所述历史性能数据的生成时间所对应的时间范围。例如,当需要获取10月1日至10月7日的历史性能数据时,所述评估用时间窗口就可以表示10月1日至10月7日。

步骤202:获取系统在连续的多个周期内的历史性能数据;所述系统为容量评估过程所针对的系统;

可以从历史性能数据库中获取待评估系统的历史性能采样数据。

根据历史性能采样数据的周期,可以对历史性能采样数据进行划分,得到连续的多个周期对应的多个子序列;一个周期内的历史性能采样数据构成一个子序列。所述子序列即为本实施例中的所述历史性能数据。

历史性能采样数据的周期可以由用户根据经验设置,也可以自动检测。当周期由用户设置时,步骤201的系统配置信息中还可以包括历史性能采样数据的周期。当自动检测历史性能采样数据的周期时,可以采用基于快速傅里叶变换(Fast Fourier Transformation,FFT)的周期检测方法。

步骤203:计算每一个历史性能数据与另外的全部历史性能数据中的每一个历史性能数据之间的相似度;

可以采用计算Pearson(皮尔森)相关系数的算法,或者计算标准化欧式距离的算法来计算每一个历史性能数据与另外的全部历史性能数据中的每一个历史性能数据之间的相似度。

步骤204:将相似度小于预设阈值的历史性能数据确定为所述历史性能变动数据。

例如以Pearson相关系数来度量相似度,Pearson相关系数的取值范围为[-1,1],通常认为Pearson相关系数大于0.8时,两个序列是比较相似的,因此可以设定阈值为0.8。

当某个历史性能数据的Pearson相关系数与另外的多个历史性能数据之间的相似度小于预设阈值时,可以确定该历史性能数据为历史性能变动数据。

本实施例中,假设历史性能变动数据的个数为n。

步骤205:按照生成时间由先到后的顺序,对包含n个所述历史性能变动数据在内的全部历史性能数据进行排序;

步骤206:将每个所述历史性能变动数据的最后一个数据点作为第一数据段的右端点,划分得到n个第一数据段;

步骤207:将生成时间最靠后的所述历史性能变动数据之后的历史性能数据划分为所述第二数据段。

步骤208:采用第一异常检测算法检测所述第一数据段中的异常数据;

步骤209:采用第二异常检测算法检测所述第二数据段中的异常数据;

其中,所述第二异常检测算法的异常检测置信度高于所述第一异常检测算法的异常检测置信度。

需要说明的是,与历史性能变动数据A相邻的历史性能数据可以被划分为两部分,第一部分是生成时间在历史性能变动数据A之后的历史性能数据,所述第一部分历史性能数据有可能与历史性能变动数据A相似度较高;第二部分是生成时间在历史性能变动数据A之前的历史性能数据,所述第二部分历史性能数据通常与历史性能变动数据A的差异较大,相似度较低。

本实施例中划分第一数据段的步骤中,将所述历史性能变动数据A与所述第一部分历史性能数据划分为一个第一数据段,可以提高历史性能变动数据A中的异常数据被检测到的概率,避免将所述历史性能变动数据A与所述第二部分历史性能数据划分为一个第一数据段而导致的历史性能变动数据A中的异常数据无法被检测。

为便于理解,下面对实施例2中的第一数据段与第二数据段的划分过程采用更具体的例子进行说明。

假设历史性能数据采集设备的采集频率为10分钟一次,每次采集得到一个历史性能采样数据,评估用时间窗口为90天,历史性能采样数据的周期为1天,则共采集到12960个数据点(即历史性能采样数据),一个周期包含的数据点为144,因此,历史性能采样数据可以被分成90个子序列(即历史性能数据),其中

子序列1:数据点1,……,数据点144

……

子序列90:数据点12817,……,数据点12960。

假设子序列20、28、31、34与其它子序列的Pearson相关系数都小于0.8,则可以确定的历史性能变动数据为子序列20、28、31、34。

然后,可以将子序列20(含子序列20)及子序列20之前的数据点划分为第一数据段1,将子序列28(含子序列28)至子序列20(不含子序列20)之间的数据点划分为第一数据段2,依次类推,直至将子序列34(不包含子序列34)之后的数据点划分为第二数据段。

实际应用中,对于所述第一数据段与所述第二数据段,还可以采用其他方式划分得到。

图3为本发明实施例提供的另一种用于容量评估的异常数据检测方法的流程图。如图3所示,该方法可以包括:

步骤301:容量评估系统获取系统配置信息。

步骤302:获取系统在连续的多个周期内的历史性能数据;所述系统为容量评估过程所针对的系统;

步骤303:计算每一个历史性能数据与另外的多个历史性能数据之间的相似度;

步骤304:将相似度小于预设阈值的历史性能数据确定为所述历史性能变动数据。

本实施例中,假设历史性能变动数据的个数为n。

步骤305:按照生成时间由先到后的顺序,对包含n个所述历史性能变动数据在内的全部历史性能数据进行排序;

步骤306:按照生成时间由先到后的顺序,对n个所述历史性能变动数据进行排序,得到排序序号;

步骤307:对于排序序号为奇数的奇数类历史性能变动数据,将所述奇数类历史性能变动数据的第一个数据点的前一个数据点作为第二数据段的右端点;对于排序序号为偶数的偶数类历史性能变动数据,将所述偶数类历史性能变动数据的最后一个数据点作为第一数据段的右端点;共划分得到n+1个数据段;

所述n+1个数据段按照历史性能数据的生成时间由先到后的顺序排列时,排序序号为奇数的数据段为所述第二数据段,排序序号为偶数的数据段为所述第一数据段。

步骤308:采用第一异常检测算法检测所述第一数据段中的异常数据;

步骤309:采用第二异常检测算法检测所述第二数据段中的异常数据;

其中,所述第二异常检测算法的异常检测置信度高于所述第一异常检测算法的异常检测置信度。

为便于理解,下面对实施例3中的第一数据段与第二数据段的划分过程采用更具体的例子进行说明。

假设历史性能数据采集设备的采集频率为10分钟一次,每次采集得到一个历史性能采样数据,评估用时间窗口为90天,历史性能采样数据的周期为1天,则共采集到12960个数据点(即历史性能采样数据),一个周期包含的数据点为144,因此,历史性能采样数据可以被分成90个子序列(即历史性能数据),其中

子序列1:数据点1,……,数据点144

……

子序列90:数据点12817,……,数据点12960。

假设子序列20、34与其它子序列的Pearson相关系数都小于0.8,则可以确定第一历史性能变动数据为子序列20、第二历史性能变动数据为子序列34。

然后,可以将第一历史性能变动数据子序列20的第一个数据点的前一个数据点(数据点2736)作为第一个第二数据段的右端点,将第二历史性能变动数据为子序列34的最后一个数据点(数据点4896)作为第一个第一数据段的右端点,将子序列34(不包含子序列34)之后的数据点划分为第二个第二数据段。

最终可以将历史性能数据划分为:

数据段1:第1个样本到第2736个样本,为第二数据段。

数据段2:第2737个样本到第4896个样本,为第一数据段。

数据段3:第4897个样本到第12960个样本,为第二数据段。

实际应用中,需要进行容量评估的系统,有时会产生一些系统变动事件。系统变动事件可以指类型为发布、更新、故障等的系统事件。而系统变动事件的发生时间,通常具有对应的历史性能变动数据。因此,为了进一步提高对于历史性能变动数据的确定过程的精确性,可以根据系统变动事件的时间信息与历史性能数据的时间信息,分析判断相似度小于预设阈值的历史性能数据,是否可以被确定为历史性能变动数据。

图4为本申请中根据系统变动事件信息确定历史性能变动数据的流程图。需要说明的是,图4所示流程可以应用与本申请实施例中,计算每一个历史性能数据与另外的多个历史性能数据之间的相似度的步骤之后;将相似度小于预设阈值的历史性能数据确定为所述历史性能变动数据之前。

如图4所示,该流程可以包括:

步骤401:获取所述系统的系统变动事件信息,所述系统变动事件至少包括系统变动事件的系统变动时间信息;

针对需要进行容量评估的系统,可以设置日志数据库。所述日志数据库中可以存储系统变动事件的相关信息,所述相关信息至少包括时间信息。系统变动事件可以指类型为发布、更新、故障等的系统事件。日志数据库中可以记录评估用时间窗口内所有的系统事件信息。

本步骤中,可以从日志数据库获取系统变动时间信息。

步骤402:确定所述相似度小于预设阈值的历史性能数据的性能变动时间信息;

步骤403:从所述相似度小于预设阈值的历史性能数据中,确定所述性能变动时间信息与所述系统变动时间信息相对应的第一历史性能数据;

如果一个相似度小于预设阈值的历史性能数据的开始时间晚于某一系统变动事件的开始时间,结束时间早于该系统变动事件的结束时间,则是与系统变动事件相对应的第一历史性能数据;否则,是不与系统变动事件相对应的第二历史性能数据。

步骤404:将所述第一历史性能数据确定为所述历史性能变动数据。

步骤405:从所述相似度小于预设阈值的历史性能数据中,确定所述性能变动时间信息与所述系统变动时间信息不对应的第二历史性能数据;

步骤406:将所述第二历史性能数据中符合预设策略的数据确定为所述历史性能变动数据。

需要说明的是,对于第二历史性能数据,还可以提示给用户,由用户人工确定是否属于历史性能变动数据。例如,可以显示关于所述第二历史性能数据的询问信息,所述询问信息用于表示询问用户是否将所述第二历史性能数据确定为所述历史性能变动数据;获取所述用户输入的确定操作;将所述确定操作指示的所述第二历史性能数据确定为所述历史性能变动数据。

实际应用中,对第一数据段进行异常数据检测时,通常需要第一数据段中包含较多的数据点,以保证异常数据检测的样本足够大。如果第一数据段中的样本较少,则会导致异常数据检测的准确率下降。

为了使第一数据段中包含较多的样本(即数据点),本申请实施例中,在确定所述性能变动时间信息与所述系统变动时间信息相对应的第一历史性能数据之后,还可以采用至少两种方式对所述第一历史性能数据进行处理。

方式一:对于与一个系统变动时间信息相对应的多个第一历史性能数据,按照生成时间由先到后的顺序进行排序;

将生成时间最靠后的第一历史性能数据确定为所述历史性能变动数据。

为便于理解,可以采用前面描述的对实施例2中的第一数据段与第二数据段的划分过程采用的更具体的例子进行说明。

即,假设具有

子序列1:数据点1,……,数据点144

……

子序列90:数据点12817,……,数据点12960。

假设子序列20、28、31、34与其它子序列的Pearson相关系数都小于0.8。

假设某个系统变动事件的开始事件为第19天0点,结束时间为第35天0点。由于子序列的周期为1天,所以子序列20、28、31、34都是与该系统变动事件相关联的第一历史性能数据。

此时,可以将生成时间最靠后的第一历史性能数据(子序列34)确定为与所述历史性能变动数据。对子序列20、28、31,可以不确定为历史性能变动数据。

处理后的第一历史性能数据中只有子序列34被确定为历史性能变动数据。

方式二:对于多个第一历史性能数据,按照生成时间由先到后的顺序进行编号;

将与相邻的下一个第一历史性能数据的编号的差值大于预设差值的第一历史性能数据确定为所述历史性能变动数据。

为便于理解,仍然采用前面描述的对实施例2中的第一数据段与第二数据段的划分过程采用的更具体的例子进行说明。

假设子序列20、28、31、34与其它子序列的Pearson相关系数都小于0.8。

假设某个系统变动事件的开始事件为第19天0点,结束时间为第35天0点。由于子序列的周期为1天,所以子序列20、28、31、34都是与该系统变动事件相关联的第一历史性能数据。

假设预设差值为3。子序列20相邻的下一个第一历史性能数据为子序列28,两者的编号的差值为8,因此,子序列20可以被确定为历史性能变动数据。子序列28相邻的下一个第一历史性能数据为子序列31,两者的编号的差值为3,因此,子序列28不会被确定为历史性能变动数据。同理,子序列31不会被确定为历史性能变动数据。对于编号最大的第一历史性能数据,可以确定为历史性能变动数据。

上述例子中,采用方式二,最终可以确定的历史性能变动数据包括子序列20和34。

本申请还提供了一种用于容量评估的异常数据检测装置。

图5为本发明实施例提供的用于容量评估的异常数据检测装置的结构图。如图5所示,该装置可以包括:

获取单元501,用于获取系统在连续的多个周期内的历史性能数据,所述系统为容量评估过程所针对的系统;

处理单元502,用于从所述历史性能数据中确定至少一个历史性能变动数据,所述每一个历史性能变动数据与另外的所述历史性能数据的相似度小于预设阈值;

将所有的所述历史性能数据划分为第一数据段和第二数据段,所述第一数据段中包含至少一个所述历史性能变动数据,所述第二数据段中不包含所述历史性能变动数据;

采用第一异常检测算法检测所述第一数据段中的异常数据;

采用第二异常检测算法检测所述第二数据段中的异常数据;

其中,所述第二异常检测算法的异常检测置信度高于所述第一异常检测算法的异常检测置信度。

本实施例中,通过从所述历史性能数据中确定历史性能变动数据;根据所述历史性能变动数据,将所述历史性能数据划分为第一数据段和第二数据段,所述第一数据段中包含至少一个所述历史性能变动数据,所述第二数据段中不包含所述历史性能变动数据;采用第一异常检测算法检测所述第一数据段中的异常数据;采用第二异常检测算法检测所述第二数据段中的异常数据;能够采用异常检测置信度与分类后的性能数据相匹配的异常检测算法进行异常数据检测,提高对于异常数据检测的准确度。

实际应用中,所述处理单元502,具体可以用于:

计算每一个历史性能数据与另外的全部历史性能数据中的每一个历史性能数据之间的相似度;

将相似度小于预设阈值的历史性能数据确定为所述历史性能变动数据。

实际应用中,所述获取单元501还可以用于:

在将相似度小于预设阈值的历史性能数据确定为所述历史性能变动数据之前,获取所述系统的系统变动事件信息,所述系统变动事件至少包括系统变动事件的系统变动时间信息;

所述处理单元,具体用于:

确定所述相似度小于预设阈值的历史性能数据的性能变动时间信息;

从所述相似度小于预设阈值的历史性能数据中,确定所述性能变动时间信息与所述系统变动时间信息相对应的第一历史性能数据;

将所述第一历史性能数据确定为所述历史性能变动数据。

实际应用中,所述处理单元502还可以用于:

在确定所述相似度小于预设阈值的历史性能数据的性能变动时间信息之后,从所述相似度小于预设阈值的历史性能数据中,确定所述性能变动时间信息与所述系统变动时间信息不对应的第二历史性能数据;

将所述第二历史性能数据中符合预设策略的数据确定为所述历史性能变动数据。

实际应用中,所述处理单元502还可以用于:

在确定所述相似度小于预设阈值的历史性能数据的性能变动时间信息之后,从所述相似度小于预设阈值的历史性能数据中,确定所述性能变动时间信息与所述系统变动时间信息不对应的第二历史性能数据;

所述装置,还可以包括:

显示单元,用于显示关于所述第二历史性能数据的询问信息,所述询问信息用于表示询问用户是否将所述第二历史性能数据确定为所述历史性能变动数据;

所述获取单元501,还可以用于获取所述用户输入的确定操作;

所述处理单元502,具体可以用于将所述确定操作指示的所述第二历史性能数据确定为所述历史性能变动数据。

实际应用中,所述历史性能数据为一个周期内按照时间顺序排列的数据点构成的数据序列,所述处理单元502,具体可以用于:

按照生成时间由先到后的顺序,对包含n个所述历史性能变动数据在内的全部历史性能数据进行排序;

将每个所述历史性能变动数据的最后一个数据点作为第一数据段的右端点,得到n个第一数据段;生成时间最靠后的所述历史性能变动数据之后的历史性能数据属于所述第二数据段。

实际应用中,所述处理单元502还可以用于:

在确定所述性能变动时间信息与所述系统变动时间信息相对应的第一历史性能数据之后,对于与一个系统变动时间信息相对应的多个第一历史性能数据,按照生成时间由先到后的顺序进行排序;

所述将所述第一历史性能数据确定为所述历史性能变动数据,具体包括:

将生成时间最靠后的第一历史性能数据确定为所述历史性能变动数据。

实际应用中,所述历史性能数据为一个周期内按照时间顺序排列的数据点构成的数据序列,所述处理单元502具体可以用于:

按照生成时间由先到后的顺序,对包含n个所述历史性能变动数据在内的全部历史性能数据进行排序;

按照生成时间由先到后的顺序,对n个所述历史性能变动数据进行排序,得到排序序号;

对于排序序号为奇数的奇数类历史性能变动数据,将所述奇数类历史性能变动数据的第一个数据点的前一个数据点作为第二数据段的右端点;对于排序序号为偶数的偶数类历史性能变动数据,将所述偶数类历史性能变动数据的最后一个数据点作为第一数据段的右端点;共划分得到n+1个数据段,所述n+1个数据段按照历史性能数据的生成时间由先到后的顺序排列时,排序序号为奇数的数据段为所述第二数据段,排序序号为偶数的数据段为所述第一数据段。

实际应用中,所述处理单元502还可以用于:

在确定所述性能变动时间信息与所述系统变动时间信息相对应的第一历史性能数据之后,对于多个第一历史性能数据,按照生成时间由先到后的顺序进行编号;

将与相邻的下一个第一历史性能数据的编号的差值大于预设差值的第一历史性能数据确定为所述历史性能变动数据。

另外,本申请实施例还提供了一种计算节点,计算节点可能是包含计算能力的主机服务器,或者是个人计算机PC,或者是可携带的便携式计算机或终端等等,本申请具体实施例并不对计算节点的具体实现做限定。

图6为本申请的计算节点的结构图。如图6所示,计算节点600包括:

处理器(processor)610,通信接口(Communications Interface)620,存储器(memory)630,总线640。

处理器610,通信接口620,存储器630通过总线640完成相互间的通信。

处理器610,用于执行程序632。

具体地,程序632可以包括程序代码,所述程序代码包括计算机操作指令。

处理器610可能是一个中央处理器CPU,或者是特定集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路。

存储器630,用于存放程序632。存储器630可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。存储器630中存储的指令可以使得处理器610执行方法实施例1~3中的方法。

实际应用中,存储器630中存储的指令可以使得处理器610执行如下操作:

获取系统在连续的多个周期内的历史性能数据,所述系统为容量评估过程所针对的系统;

从所述历史性能数据中确定历史性能变动数据,所述历史性能变动数据与另外的所述历史性能数据的相似度小于预设阈值;

根据所述历史性能变动数据,将所述历史性能数据划分为第一数据段和第二数据段,所述第一数据段中包含至少一个所述历史性能变动数据,所述第二数据段中不包含所述历史性能变动数据;

采用第一异常检测算法检测所述第一数据段中的异常数据;

采用第二异常检测算法检测所述第二数据段中的异常数据;

其中,所述第二异常检测算法的异常检测置信度高于所述第一异常检测算法的异常检测置信度。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的硬件平台的方式来实现,当然也可以全部通过硬件来实施,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本申请的限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1