一种主机变量异常检测方法及系统转让专利

申请号 : CN201610924584.0

文献号 : CN106528313B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 马平清王巍韩智东廉宜果戴月朱雅蓉李昂朱伟

申请人 : 中国银联股份有限公司

摘要 :

本发明提供一种主机变量异常检测方法及系统,该方法包括:按照第一预设时间长度的数据窗口,通过关联规则算法,计算待检测主机的多个变量之间的第一关联规则集;按照第二预设时间向后滑动数据窗口,通过关联规则算法计算按照预设时间向后滑动后的数据窗口中变量之间的第二关联规则集;将第二关联规则集中的每条规则分别与第一关联规则集中的每条规则进行比对,计算第一关联规则集与第二关联规则集的相似度;根据相似度与规则集最小相似度进行比较,判断待检测主机的变量是否出现异常情况。

权利要求 :

1.一种主机变量异常检测方法,其特征在于,所述的主机变量异常检测方法包括:按照第一预设时间长度的数据窗口,通过关联规则算法,计算待检测主机的多个变量之间的第一关联规则集;

按照第二预设时间向后滑动所述的数据窗口,通过关联规则算法计算按照预设时间向后滑动后的数据窗口中所述变量之间的第二关联规则集;

将所述第二关联规则集中的每条规则分别与所述第一关联规则集中的每条规则进行比对,计算所述第一关联规则集与第二关联规则集的相似度;

根据所述相似度与规则集最小相似度进行比较,判断所述待检测主机的变量是否出现异常情况。

2.根据权利要求1所述的主机变量异常检测方法,其特征在于,当确定所述待检测主机的变量出现异常情况时,用前一数据窗口中的所述变量的数据替换所述按照预设时间向后滑动后的数据窗口中所述变量的数据。

3.根据权利要求1所述的主机变量异常检测方法,其特征在于,将所述第二关联规则集中的每条规则分别与所述第一关联规则集中的每条规则进行比对,计算所述第一关联规则集与第二关联规则集的相似度,具体包括:根据比对结果确定所述第一关联规则集与第二关联规则集中相同规则的数量;

根据所述第一关联规则集中规则的总数及所述相同规则的数量计算所述相似度。

4.根据权利要求3所述的主机变量异常检测方法,其特征在于,根据比对结果确定所述第一关联规则集与第二关联规则集中相同规则的数量,具体包括:比对所述第一关联规则集与第二关联规则集的每条规则之间,是否满足以下条件:所述第一关联规则集与第二关联规则集的规则前项及规则后项相同;

所述第一关联规则集与第二关联规则集的最小支持度的支持度偏差在支持度偏差阈值范围内;

所述第一关联规则集与第二关联规则集的最小置信度的置信度偏差在置信度偏差阈值范围内;

如果均满足所述条件,则判定所述第一关联规则集与第二关联规则集中的规则属于相同规则;

统计所述相同规则的数量。

5.根据权利要求3所述的主机变量异常检测方法,其特征在于,通过以下公式计算所述相似度:S=S(Sum)/R1(Sum)×100%,

其中,S为所述相似度;S(Sum)为所述相同规则的数量;R1(Sum)为所述第一关联规则集中规则的总数。

6.根据权利要求1所述的主机变量异常检测方法,其特征在于,判断所述待检测主机的变量是否出现异常情况,具体包括:当所述相似度大于或等于所述规则集最小相似度时,则判定所述待检测主机的变量正常;

当所述相似度小于所述规则集最小相似度时,则判定所述待检测主机的变量出现异常情况。

7.一种主机变量异常检测系统,其特征在于,所述的主机变量异常检测系统包括:第一关联规则集计算单元,用于按照第一预设时间长度的数据窗口,通过关联规则算法,计算待检测主机的多个变量之间的第一关联规则集;

第二关联规则集计算单元,用于按照第二预设时间向后滑动所述的数据窗口,通过关联规则算法计算按照预设时间向后滑动后的数据窗口中所述变量之间的第二关联规则集;

相似度计算单元,用于将所述第二关联规则集中的每条规则分别与所述第一关联规则集中的每条规则进行比对,计算所述第一关联规则集与第二关联规则集的相似度;

异常情况判断单元,用于根据所述相似度与规则集最小相似度进行比较,判断所述待检测主机的变量是否出现异常情况。

8.根据权利要求7所述的主机变量异常检测系统,其特征在于,所述主机变量异常检测系统还包括:异常情况处理单元,用于当确定所述待检测主机的变量出现异常情况时,用前一数据窗口中的所述变量的数据替换所述按照预设时间向后滑动后的数据窗口中所述变量的数据。

9.根据权利要求7所述的主机变量异常检测系统,其特征在于,所述的相似度计算单元包括:相同规则数量确定模块,用于根据比对结果确定所述第一关联规则集与第二关联规则集中相同规则的数量;

相似度计算模块,用于根据所述第一关联规则集中规则的总数及所述相同规则的数量计算所述相似度。

10.根据权利要求9所述的主机变量异常检测系统,其特征在于,所述相同规则数量确定模块具体用于:比对所述第一关联规则集与第二关联规则集的每条规则之间,是否满足以下条件:所述第一关联规则集与第二关联规则集的规则前项及规则后项相同;

所述第一关联规则集与第二关联规则集的最小支持度的支持度偏差在支持度偏差阈值范围内;

所述第一关联规则集与第二关联规则集的最小置信度的置信度偏差在置信度偏差阈值范围内;

如果均满足所述条件,则判定所述第一关联规则集与第二关联规则集中的规则属于相同规则;

统计所述相同规则的数量。

11.根据权利要求9所述的主机变量异常检测系统,其特征在于,所述相似度计算模块通过以下公式计算所述相似度:S=S(Sum)/R1(Sum)×100%,

其中,S为所述相似度;S(Sum)为所述相同规则的数量;R1(Sum)为所述第一关联规则集中规则的总数。

12.根据权利要求7所述的主机变量异常检测系统,其特征在于,所述异常情况判断单元具体用于:当所述相似度大于或等于所述规则集最小相似度时,则判定所述待检测主机的变量正常;

当所述相似度小于规则集最小相似度时,则判定所述待检测主机的变量出现异常情况。

说明书 :

一种主机变量异常检测方法及系统

技术领域

[0001] 本发明是关于数据异常检测技术,具体地,是关于一种主机变量异常检测方法及系统。

背景技术

[0002] 关联规则挖掘是指找出支持度大于等于min-sup并且置信度大于等于min-conf的所有规则,min-sup和min-conf是对应的支持度和置信度阈值。
[0003] 由于关联规则挖掘能够发现海量数据中不同属性之间的有趣关系,因此其应用范围较为广泛。有文献提出了一种模糊加权关联规则挖掘方法,结合模糊集合、Apriori数据挖掘算法和时间序列分析,挖掘报警关联规则。并将其应用于大规模工业生产中,有效的抑制了工业报警的泛滥。有文献运用关联规则和马尔可夫模型的思想对IP定位数据集进行挖掘,以此提高IP定位的准确率和覆盖率。有文献运用Apriori算法,挖掘上市公司之间的信用风险传染,将其应用于上市公司风险评估中,发现产生强关联规则的上市公司之间信用风险传染较为明显,为上市公司风险控制提供决策支持。有文献应用关联规则挖掘算法,对民航快递市场销售数据进行挖掘,为民航快递市场营销提供决策支持。
[0004] 然而,基于上述算法所进行的异常检测所具备的缺点主要有以下几点:
[0005] 1.准确率偏低,其漏检率偏高。
[0006] 2.仅仅支持单一变量的检测,无法对多变量进行检测。
[0007] 3.通过设定阈值来完成的,而阈值是经验值,且都是静态的,其科学性较差。

发明内容

[0008] 本发明实施例的主要目的在于提供一种主机变量异常检测方法及系统,以应对多种不同的异常检测需求,提高异常检测准确率。
[0009] 为了实现上述目的,本发明实施例提供一种主机变量异常检测方法,所述的主机变量异常检测方法包括:按照第一预设时间长度的数据窗口,通过关联规则算法,计算待检测主机的多个变量之间的第一关联规则集;按照第二预设时间向后滑动所述的数据窗口,通过关联规则算法计算按照预设时间向后滑动后的数据窗口中所述变量之间的第二关联规则集;将所述第二关联规则集中的每条规则分别与所述第一关联规则集中的每条规则进行比对,计算所述第一关联规则集与第二关联规则集的相似度;根据所述相似度与规则集最小相似度进行比较,判断所述待检测主机的变量是否出现异常情况。
[0010] 在一实施例中,当确定所述待检测主机的变量出现异常情况时,用前一数据窗口中的所述变量的数据替换所述按照预设时间向后滑动后的数据窗口中所述变量的数据。
[0011] 在一实施例中,上述的将所述第二关联规则集中的每条规则分别与所述第一关联规则集中的每条规则进行比对,计算所述第一关联规则集与第二关联规则集的相似度,具体包括:根据比对结果确定所述第一关联规则集与第二关联规则集中相同规则的数量;根据所述第一关联规则集中规则的总数及所述相同规则的数量计算所述相似度。
[0012] 在一实施例中,上述的根据比对结果确定所述第一关联规则集与第二关联规则集中相同规则的数量,具体包括:比对所述第一关联规则集与第二关联规则集的每条规则之间,是否满足以下条件:所述第一关联规则集与第二关联规则集的规则前项及规则后项是否相同;所述第一关联规则集与第二关联规则集的最小支持度的支持度偏差在支持度偏差阈值范围内;所述第一关联规则集与第二关联规则集的最小置信度的置信度偏差在置信度偏差阈值范围内;如果均满足所述条件,则判定所述第一关联规则集与第二关联规则集中的规则属于相同规则;统计所述相同规则的数量。
[0013] 在一实施例中,通过以下公式计算所述相似度:S=S(Sum)/R1(Sum)×100%,其中,S为所述相似度;S(Sum)为所述相同规则的数量;R1(Sum)为所述第一关联规则集中规则的总数。
[0014] 在一实施例中,判断所述待检测主机的变量是否出现异常情况,具体包括:当所述相似度大于或等于所述规则集最小相似度时,则判定所述待检测主机的变量正常;当所述相似度小于所述规则集最小相似度时,则判定所述待检测主机的变量出现异常情况。
[0015] 本发明实施例还提供一种主机变量异常检测系统,所述的主机变量异常检测系统包括:第一关联规则集计算单元,用于按照第一预设时间长度的数据窗口,通过关联规则算法,计算待检测主机的多个变量之间的第一关联规则集;第二关联规则集计算单元,用于按照第二预设时间向后滑动所述的数据窗口,通过关联规则算法计算按照预设时间向后滑动后的数据窗口中所述变量之间的第二关联规则集;相似度计算单元,用于将所述第二关联规则集中的每条规则分别与所述第一关联规则集中的每条规则进行比对,计算所述第一关联规则集与第二关联规则集的相似度;异常情况判断单元,用于根据所述相似度与规则集最小相似度进行比较,判断所述待检测主机的变量是否出现异常情况。
[0016] 在一实施例中,上述的主机变量异常检测系统还包括:异常情况处理单元,用于当确定所述待检测主机的变量出现异常情况时,用前一数据窗口中的所述变量的数据替换所述按照预设时间向后滑动后的数据窗口中所述变量的数据。
[0017] 在一实施例中,上述的相似度计算单元包括:相同规则数量确定模块,用于根据比对结果确定所述第一关联规则集与第二关联规则集中相同规则的数量;相似度计算模块,用于根据所述第一关联规则集中规则的总数及所述相同规则的数量计算所述相似度。
[0018] 在一实施例中,上述的相同规则数量确定模块具体用于:比对所述第一关联规则集与第二关联规则集的每条规则之间,是否满足以下条件:所述第一关联规则集与第二关联规则集的规则前项及规则后项是否相同;所述第一关联规则集与第二关联规则集的最小支持度的支持度偏差在支持度偏差阈值范围内;所述第一关联规则集与第二关联规则集的最小置信度的置信度偏差在置信度偏差阈值范围内;如果均满足所述条件,则判定所述第一关联规则集与第二关联规则集中的规则属于相同规则;统计所述相同规则的数量。
[0019] 在一实施例中,上述的相似度计算模块通过以下公式计算所述相似度:S=S(Sum)/R1(Sum)×100%,其中,S为所述相似度;S(Sum)为所述相同规则的数量;R1(Sum)为所述第一关联规则集中规则的总数。
[0020] 在一实施例中,上述的异常情况判断单元具体用于:当所述相似度大于或等于所述规则集最小相似度时,则判定所述待检测主机的变量正常;当所述相似度小于规则集最小相似度时,则判定所述待检测主机的变量出现异常情况。
[0021] 本发明实施例的有益效果在于,能够实现将滑动窗口技术与关联规则算法相结合,确定待检测主机的多个变量之间的规则集,并通过滑动窗口滑动前后数据的相似度来判断待检测主机的变量是否出现异常情况,相较于现有的异常检测技术,能够提高异常检测的覆盖率以及准确度,且此方法具有普适性,能够适用于多种数据异常检测场合。

附图说明

[0022] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0023] 图1为根据本发明实施例的主机变量异常检测方法的流程图;
[0024] 图2为根据本发明实施例的主机变量异常检测系统的结构示意图;
[0025] 图3为根据本发明实施例的相似度计算单元的结构示意图。

具体实施方式

[0026] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0027] 本发明实施例提供一种主机变量异常检测方法及系统。以下结合附图对本发明进行详细说明。
[0028] 本发明实施例提供一种主机变量异常检测方法,如图1所示,该主机变量异常检测方法主要包括以下步骤:
[0029] 步骤S101:按照第一预设时间长度的数据窗口,通过关联规则算法,计算待检测主机的多个变量之间的第一关联规则集;
[0030] 步骤S102:按照第二预设时间向后滑动数据窗口,通过关联规则算法计算按照预设时间向后滑动后的数据窗口中的变量之间的第二关联规则集;
[0031] 步骤S103:将第二关联规则集中的每条规则分别与第一关联规则集中的每条规则进行比对,计算第一关联规则集与第二关联规则集的相似度;
[0032] 步骤S104:根据相似度与规则集最小相似度进行比较,判断待检测主机的变量是否出现异常情况。
[0033] 通过上述的步骤S101至步骤S104,本发明实施例的主机变量异常检测方法,实现将滑动窗口技术与关联规则算法相结合,确定待检测主机的多个变量之间的规则集,并通过滑动窗口滑动前后数据的相似度来判断待检测主机的变量是否出现异常情况,相较于现有的异常检测技术,能够提高异常检测的覆盖率以及准确度,且此方法具有普适性,能够适用于多种数据异常检测场合。
[0034] 以下结合具体实施例,对本发明实施例的主机变量异常检测方法做进一步说明。
[0035] 上述的步骤S101,按照第一预设时间长度的数据窗口,通过关联规则算法,计算待检测主机的多个变量之间的第一关联规则集。
[0036] 在实际应用中,待检测主机中可能包含有多种变量,如下表1所示。
[0037] 表1
[0038]
[0039] 在本发明实施例中,是选取上述表格中一主机的两个变量,按照第一预设时间长度(例如是一天)的数据窗口,通过关联规则算法,计算待检测主机的两个变量之间的第一关联规则集R1,如下表2所示。其中规则前项、规则后项、规则前项的分箱数、规则后项的分箱数、规则最小支持度、规则最小置信度均以参数形式给出,便于后期数据验证时的调整。
[0040] 需要说明的是,在此实施例中,给出的示例是针对主机中的两个变量计算关联规则的过程。但实际应用中,也可是针对三个或三个以上的变量,本发明并不以此为限。并且,是选用Apriori算法作为上述的关联规则算法,但本发明并不以此为限,可根据实际情况选用不同的关联规则算法。
[0041] 表2
[0042]
[0043] 上表中,frontItem表示规则前项,behindItem表示规则后项,Support表示支持度,Confidence表示置信度。
[0044] 上述的Apriori算法是一种最有影响的布尔关联规则算法,因此,基于上述任务的Apriori算法基本思想是:首先找出所有的频繁项集,选出的项集需要满足预先设定的最小支持度。然后使用找到的频繁项集产生强关联规则,其中所产生的规则必须满足最小置信度。
[0045] 上述步骤S102,按照第二预设时间向后滑动数据窗口,通过关联规则算法计算按照预设时间向后滑动后的数据窗口中的变量之间的第二关联规则集。
[0046] 在本发明实施例中,是将滑动窗口技术与关联规则算法相结合。例如,对于表1中,Host1主机的两个变量CPUUserTime及DSKPercentBus,上述的第一关联规则集即是获取上述两个变量在一天内的数据(当天00:00至次日00:00)的规则集。而基于滑动窗口,按预设时间(例如是5分钟)向后滑动数据窗口,则是获取上述两个变量在当天00:05至次日00:05的数据,并通过Apriori算法计算生成第二关联规则集R2。
[0047] 上述步骤S103,将第二关联规则集中的每条规则分别与第一关联规则集中的每条规则进行比对,计算第一关联规则集与第二关联规则集的相似度。
[0048] 具体地,是利用规则集比对算法,对第二关联规则集R2中的每条规则与第一关联规则集R1中的每条规则进行比对。其中比对内容为:规则前项、规则后项、规则最小支持度、规则最小置信度,比对方法为:规则支持度和规则置信度比较时,可以按照偏差进行设置,即第二关联规则集R2中的一条规则和第一关联规则集R1中一条规则的前后项相同,如果这两条规则的支持度偏差S(Dif)及置信度偏差C(Dif)分别在给定支持度偏差阈值范围及置信度偏差阈值范围内(S(Dif)和C(Dif)是可参数化的,根据验证结果进行调整),则这两条规则是相同的。然后,统计确定第一关联规则集R1与第二关联规则集R1中相同规则的数量S(Sum)。
[0049] 然后,根据第一关联规则集中规则的总数及相同规则的数量计算第一关联规则集与第二关联规则集的相似度。
[0050] 具体地,在一实施例中,是结合第一关联规则集R1中规则的总数R1(Sum)来计算第一关联规则集R1及第二关联规则集R2的相似度S。可通过以下公式计算第一关联规则集R1及第二关联规则集R2的相似度S:S=S(Sum)/R1(Sum)×100%,计算结果如下表3所示。
[0051] 表3
[0052]
[0053] 通过上表可以看出,在此实施例中,是以每5分钟作为预设时间,向后移动滑动窗口,从而获取第二关联规则集R2。
[0054] 然后,即可通过步骤S104,将计算得到的第一关联规则集R1及第二关联规则集R2的相似度S与规则集最小相似度进行比较,判断待检测主机的变量是否出现异常情况。
[0055] 其中,利用历史数据验证,调整相关参数,得到不同规则集的最小相似度S(Min)。例如是,观察历史数据,在实际生产环境中没有发生故障和事件时,其相应的S(Dif)为
0.006,C(Dif)为0.03,S(Min)为85%。
[0056] 将相似度S与规则集最小相似度S(Min)进行比较,如果S≥S(Min),则判定待检测主机的变量正常;如果S
[0057] 结合上表3中的数据可以看出,对于规则集最小相似度S(Min)为85%时,HOST1的变量CPUUserTime及DSKPercentBus的异常情况出现在2015/10/29 1:05,其余时间均为正常。
[0058] 需要说明的是,上述实施例中所列举的具体时间、数值及百分比等数据均为举例说明,而并非用以限制本发明。在具体实施时,上述的具体时间、数值及百分比等数据均可根据实际情况和实际需要进行调整。
[0059] 并且,上文中所提及的变量也仅是实例说明,在实际应用中,主机中可包含多种变量,针对不同的变量之间进行异常检测,均可通过本发明实施例的主机变量异常检测方法的上述过程实现,在此不再赘述。
[0060] 以上即是本发明实施例的主机变量异常检测方法在进行异常检测的主要过程,通过上述过程,融合关联分析和滑动窗口技术,在实际应用中,根据验证结果,调整相应的参数,得出不同滑动窗口规则集之间的相似度,然后与最小相似度进行比较,判断变量的异常情况。能够有效提高异常检测准确率及检测覆盖率,并减小检测漏报率。
[0061] 在一较佳实施例中,本发明实施例的主机变量异常检测方法还可包括如下步骤:当确定待检测主机的变量出现异常情况时,用前一数据窗口中的所述变量的数据替换所述按照预设时间向后滑动后的数据窗口中所述变量的数据。
[0062] 如果出现异常情况,用上一个没有异常的滑动窗口期数据替换本窗口期的数据,然后重新计算规则集。用最新的窗口期规则集和上一个窗口期的规则集对比,形成当前窗口期的规则集相似度。
[0063] 例如,对于上表3中的数据而言,当2015/10/29 1:05的数据出现异常时,用2015/10/29 1:00的数据替换2015/10/29 1:05的数据,并用替换后的2015/10/29 1:05的数据与
2015/10/29 1:10的数据再进行相似度计算。
[0064] 基于本发明实施例的主机变量异常检测方法,在实际应用过程中进行了实际测试,并与传统数据中心的异常检测结果进行比对。具体测试结果如下表4及表5所示。
[0065] 表4
[0066]
[0067] 表4中示出的是2015年10月份传统监控异常事件表。
[0068] 上表中,host_name代表主机名,parameter代表主机的变量,date_time代表时间点,value_str代表该时间点下该主机变量的具体值。
[0069] 表5
[0070]
[0071] 上表中host_name代表主机名,parameter1代表主机的某一变量,parameter2代表主机的另一变量,windows代表窗口期,以5分钟为单位,percent代表当前窗口期与上一窗口期规则集的相似度,S(min)代表规则集最小相似度,isalarm代表当前规则集相似度是否小于规则集最小相似度,1表示小于,0表示大于。
[0072] 通过表4及表5的检测结果对比可知,利用本发明实施例的主机变量异常检测方法,异常检测准确率为98%,检测覆盖率为100%,检测漏报率为0(传统的漏报率为66.7%)。其实际效果要明显优于传统数据中心的异常检测。
[0073] 本发明实施例还提供一种主机变量异常检测系统,如图2所示,该主机变量异常检测系统主要包括:第一关联规则集计算单元1、第二关联规则集计算单元2、相似度计算单元3及异常情况判断单元4等。
[0074] 其中,上述的第一关联规则集计算单元1用于按照第一预设时间长度的数据窗口,通过关联规则算法,计算待检测主机的多个变量之间的第一关联规则集;第二关联规则集计算单元2用于按照第二预设时间向后滑动数据窗口,通过关联规则算法计算按照预设时间向后滑动后的数据窗口中的变量之间的第二关联规则集;相似度计算单元3用于将第二关联规则集中的每条规则分别与第一关联规则集中的每条规则进行比对,计算第一关联规则集与第二关联规则集的相似度;异常情况判断单元4用于根据相似度与规则集最小相似度进行比较,判断待检测主机的变量是否出现异常情况。
[0075] 通过上述的各个组成部分的相互协作,本发明实施例的主机变量异常检测系统,实现将滑动窗口技术与关联规则算法相结合,确定待检测主机的多个变量之间的规则集,并通过滑动窗口滑动前后数据的相似度来判断待检测主机的变量是否出现异常情况,相较于现有的异常检测技术,能够提高异常检测的覆盖率以及准确度,且此系统具有普适性,能够适用于多种数据异常检测场合。
[0076] 以下结合具体实施例,对本发明实施例的主机变量异常检测系统做进一步说明。
[0077] 上述的第一关联规则集计算单元1,用于按照第一预设时间长度的数据窗口,通过关联规则算法,计算待检测主机的多个变量之间的第一关联规则集。
[0078] 在实际应用中,待检测主机中可能包含有多种变量,如表1所示。
[0079] 在本发明实施例中,是选取表1中一主机的两个变量,按照第一预设时间长度(例如是一天)的数据窗口,通过关联规则算法,计算待检测主机的两个变量之间的第一关联规则集R1,如表2所示。其中规则前项、规则后项、规则前项的分箱数、规则后项的分箱数、规则最小支持度、规则最小置信度均以参数形式给出,便于后期数据验证时的调整。
[0080] 需要说明的是,在此实施例中,给出的示例是针对主机中的两个变量计算关联规则的过程。但实际应用中,也可是针对三个或三个以上的变量,本发明并不以此为限。并且,是选用Apriori算法作为上述的关联规则算法,但本发明并不以此为限,可根据实际情况选用不同的关联规则算法。
[0081] 上述的Apriori算法是一种最有影响的布尔关联规则算法,因此,基于上述任务的Apriori算法基本思想是:首先找出所有的频繁项集,选出的项集需要满足预先设定的最小支持度。然后使用找到的频繁项集产生强关联规则,其中所产生的规则必须满足最小置信度。
[0082] 上述的第二关联规则集计算单元2,用于按照第二预设时间向后滑动数据窗口,通过关联规则算法计算按照预设时间向后滑动后的数据窗口中的变量之间的第二关联规则集。
[0083] 在本发明实施例中,是将滑动窗口技术与关联规则算法相结合。例如,对于表1中,Host1主机的两个变量CPUUserTime及DSKPercentBus,上述的第一关联规则集即是获取上述两个变量在一天内的数据(当天00:00至次日00:00)的规则集。而基于滑动窗口,按预设时间(例如是5分钟)向后滑动数据窗口,则是获取上述两个变量在当天00:05至次日00:05的数据,并通过Apriori算法计算生成第二关联规则集R2。
[0084] 上述的相似度计算单元3,用于将第二关联规则集中的每条规则分别与第一关联规则集中的每条规则进行比对,计算第一关联规则集与第二关联规则集的相似度。
[0085] 具体地,如图3所示,相似度计算单元3主要包括:相同规则数量确定模块31,用于根据比对结果确定第一关联规则集与第二关联规则集中相同规则的数量;相似度计算模块32,用于根据第一关联规则集中规则的总数及相同规则的数量计算相似度。
[0086] 其中,上述的相同规则数量确定模块31是利用规则集比对算法,对第二关联规则集R2中的每条规则与第一关联规则集R1中的每条规则进行比对。其中比对内容为:规则前项、规则后项、规则最小支持度、规则最小置信度,比对方法为:规则支持度和规则置信度比较时,可以按照偏差进行设置,即第二关联规则集R2中的一条规则和第一关联规则集R1中一条规则的前后项相同,如果这两条规则的支持度偏差S(Dif)及置信度偏差C(Dif)分别在给定支持度偏差阈值范围及置信度偏差阈值范围内(S(Dif)和C(Dif)是可参数化的,根据验证结果进行调整),则这两条规则是相同的。然后,统计确定第一关联规则集R1与第二关联规则集R1中相同规则的数量S(Sum)。
[0087] 在通过相同规则数量确定模块31确定了第一关联规则集R1与第二关联规则集R2中相同规则的数量S(Sum)后,相似度计算模块32可结合第一关联规则集R1中规则的总数R1(Sum)来计算第一关联规则集R1及第二关联规则集R2的相似度S。
[0088] 具体地,在一实施例中,相似度计算模块32可通过以下公式计算第一关联规则集R1及第二关联规则集R2的相似度S:S=S(Sum)/R1(Sum)×100%,计算结果如表3所示。
[0089] 通过表3可以看出,在此实施例中,是以每5分钟作为预设时间,向后移动滑动窗口,从而获取第二关联规则集R2。
[0090] 然后,即可通过异常情况判断单元4,将计算得到的第一关联规则集R1及第二关联规则集R2的相似度S与规则集最小相似度进行比较,判断待检测主机的变量是否出现异常情况。
[0091] 其中,利用历史数据验证,调整相关参数,得到不同规则集的最小相似度S(Min)。例如是,观察历史数据,在实际生产环境中没有发生故障和事件时,其相应的S(Dif)为
0.006,C(Dif)为0.03,S(Min)为85%。
[0092] 将相似度S与规则集最小相似度S(Min)进行比较,如果S≥S(Min),则判定待检测主机的变量正常;如果S
[0093] 结合表3中的数据可以看出,对于规则集最小相似度S(Min)为85%时,HOST1的变量CPUUserTime及DSKPercentBus的异常情况出现在2015/10/29 1:05,其余时间均为正常。
[0094] 需要说明的是,上述实施例中所列举的具体时间、数值及百分比等数据均为举例说明,而并非用以限制本发明。在具体实施时,上述的具体时间、数值及百分比等数据均可根据实际情况和实际需要进行调整。
[0095] 并且,上文中所提及的变量也仅是实例说明,在实际应用中,主机中可包含多种变量,针对不同的变量之间进行异常检测,均可通过本发明实施例的主机变量异常检测系统的上述过程实现,在此不再赘述。
[0096] 以上即是本发明实施例的主机变量异常检测系统在进行异常检测的主要过程,通过上述过程,融合关联分析和滑动窗口技术,在实际应用中,根据验证结果,调整相应的参数,得出不同滑动窗口规则集之间的相似度,然后与最小相似度进行比较,判断变量的异常情况。能够有效提高异常检测准确率及检测覆盖率,并减小检测漏报率。
[0097] 在一较佳实施例中,本发明实施例的主机变量异常检测系统还可包括异常情况处理单元,用于当确定待检测主机的变量出现异常情况时,用前一数据窗口中的所述变量的数据替换所述按照预设时间向后滑动后的数据窗口中所述变量的数据。
[0098] 如果出现异常情况,异常情况处理单元用上一个没有异常的滑动窗口期数据替换本窗口期的数据,然后重新计算规则集。用最新的窗口期规则集和上一个窗口期的规则集对比,形成当前窗口期的规则集相似度。
[0099] 例如,对于表3中的数据而言,当2015/10/29 1:05的数据出现异常时,用2015/10/29 1:00的数据替换2015/10/29 1:05的数据,并用替换后的2015/10/29 1:05的数据与
2015/10/29 1:10的数据再进行相似度计算。
[0100] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读取存储介质中,比如ROM/RAM、磁碟、光盘等。
[0101] 以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。