一种系统健康度预测方法及装置的制造方法

文档序号:10569829阅读:433来源:国知局
一种系统健康度预测方法及装置的制造方法
【专利摘要】本发明公开了一种系统健康度预测方法及装置,该方法包括通过采集系统的日志数据,并建立系统的日志数据的特征变量集,对多个特征变量进行标准化处理,确定时间粒度和每个特征变量的波动区间,根据时间粒度和每个特征变量的波动区间,对进行标准化处理后的多个特征变量进行预处理,生成系统运行特征数据集,根据关联规则挖掘算法对系统运行特征数据集进行分析,生成强关联规则集,强关联规则集用于预测系统健康度。通过关联规则挖掘算法随系统运行特征数据集进行分析,对系统运行中的特征变量进行实时监控,能够预测系统未来一段时间内的运行状态,可以实现在事故发生前预测,事故发生后确定故障来源,便于工作人员快速处理。
【专利说明】
一种系统健康度预测方法及装置
技术领域
[0001] 本发明涉及数据挖掘技术领域,尤其涉及一种系统健康度预测方法及装置。
【背景技术】
[0002] 随着IT技术以及信息化技术的发展,人们对IT运行维护的安全性和稳定性要求 越来越高,同时系统中产生的海量运维数据蕴含着巨大的潜在价值和商机,这些数据已经 逐渐成为了一种生产资料。传统的运行维护模式单一、无法事前预知事故发生的可能性,是 被动的运行维护,这种运行维护模式已经不能满足人们日益增长的对系统安全性和稳定性 的需求。对于运行维护部门来说,从海量的系统运行维护数据中挖掘有价值的信息,实时监 控系统的健康状态,用于支撑新的主动运维模式的愿望越来越强烈。大数据技术的发展,为 海量数据的分析和挖掘提供了可能性。
[0003] 因此,亟需一种可以对海量数据进行分析和挖掘的方法,以实现通过对海量数据 的挖掘和分析,来提前预测事故发生的可能性,进而为提前做好事故处理的准备工作。

【发明内容】

[0004] 本发明实施例提供一种系统健康度预测方法及装置,用以通过对海量数据的挖掘 和分析,来提前预测系统事故发生,进而为提前做好事故处理的准备工作。
[0005] 本发明实施例提供的一种系统健康度预测方法,包括:
[0006] 采集系统的日志数据,并建立系统的日志数据的特征变量集,所述特征变量集包 括多个用于反映系统运行状况的特征变量;
[0007] 确定每个特征变量的波动区间及根据所述多个特征变量的采集频率,确定时间粒 度;
[0008] 针对每个特征变量,根据该特征变量的波动区间对该特征变量在所述时间粒度内 的采集值进行预处理,生成系统运行特征数据集;
[0009] 根据关联规则挖掘算法对所述系统运行特征数据集进行分析,生成强关联规则 集,所述强关联规则集用于预测系统健康度。
[0010] 较佳地,所述确定每个特征变量的波动区间,包括:
[0011] 米用分位法统计每个特征变量的分布特征;
[0012] 根据每个特征变量的分布特征,确定每个特征变量的波动区间。
[0013] 较佳地,所述根据所述多个特征变量的采集频率,确定时间粒度,包括:
[0014] 统计所述每个特征变量的采集频率分布;
[0015] 将所述采集频率分布的中位数的倒数,确定为时间粒度。
[0016] 较佳地,所述针对每个特征变量,根据该特征变量的波动区间对该特征变量在所 述时间粒度内的采集值进行预处理,生成系统运行特征数据集,包括:
[0017] 每个特征变量的波动区间为N个波动区间,确定所述N个波动区间分别对应的数 值;
[0018] 针对每个特征变量,确定该特征变量在所述时间粒度内的各采集值对应的波动区 间,并将各采集值转换为其所属的波动区间的值,生成系统运行特征数据集。
[0019] 较佳地,所述根据关联规则挖掘算法对所述系统运行特征数据集进行分析,生成 强关联规则集,包括:
[0020] 遍历所述系统运行特征数据集,将所述系统运行特征数据集中支持度大于等于支 持度阈值且置信度大于等于置信度阈值的集合,确定为所述强关联规则集。
[0021] 相应地,本发明实施例还提供了一种系统健康度预测装置,包括:
[0022] 采集单元,用于采集系统的日志数据,并建立系统的日志数据的特征变量集,所述 特征变量集包括多个用于反映系统运行状况的特征变量;
[0023] 确定单元,用于确定每个特征变量的波动区间及根据所述多个特征变量的采集频 率,确定时间粒度;
[0024] 预处理单元,用于针对每个特征变量,根据该特征变量的波动区间对该特征变量 在所述时间粒度内的采集值进行预处理,生成系统运行特征数据集;
[0025] 数据分析单元,用于根据关联规则挖掘算法对所述系统运行特征数据集进行分 析,生成强关联规则集,所述强关联规则集用于预测系统健康度。
[0026] 较佳地,所述确定单元具体用于:
[0027] 米用分位法统计每个特征变量的分布特征;
[0028] 根据每个特征变量的分布特征,确定每个特征变量的波动区间。
[0029] 较佳地,所述确定单元具体用于:
[0030] 统计所述每个特征变量的采集频率分布;
[0031] 将所述采集频率分布的中位数的倒数,确定为时间粒度。
[0032] 较佳地,所述预处理单元具体用于:
[0033] 每个特征变量的波动区间为N个波动区间,确定所述N个波动区间分别对应的数 值;
[0034] 针对每个特征变量,确定该特征变量在所述时间粒度内的各采集值对应的波动区 间,并将各采集值转换为其所属的波动区间的值,生成系统运行特征数据集。
[0035] 较佳地,所述数据分析单元具体用于:
[0036] 遍历所述系统运行特征数据集,将所述系统运行特征数据集中支持度大于等于支 持度阈值且置信度大于等于置信度阈值的集合,确定为所述强关联规则集。
[0037] 本发明实施例表明,通过采集系统的日志数据,并建立系统的日志数据的特征变 量集,对所述多个特征变量进行标准化处理,确定时间粒度和每个特征变量的波动区间,根 据所述时间粒度和每个特征变量的波动区间,对进行标准化处理后的所述多个特征变量进 行预处理,生成系统运行特征数据集,根据关联规则挖掘算法对所述系统运行特征数据集 进行分析,生成强关联规则集,所述强关联规则集用于预测系统健康度。通过对多个特征变 量进行预处理,将系统的日志数据转化为可以用于数据挖掘分析的结构化数据,然后通过 关联规则挖掘算法随系统运行特征数据集进行分析,不仅可以确定各特征变量之间的关联 关系,还可以反映系统运行过程汇总的状态,对系统运行中的各特征变量进行实时监控,能 够预测系统未来一段时间内的运行状态,可以实现在事故发生前预测,事故发生后确定故 障来源,便于工作人员快速处理。
【附图说明】
[0038] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使 用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本 领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其 他的附图。
[0039] 图1为本发明实施例中一种系统健康度预测方法的流程示意图;
[0040] 图2为本发明实施例中一种系统健康度预测装置的结构示意图。
【具体实施方式】
[0041] 为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进 一步地详细描述,显然,所描述的实施例仅仅是本申请一部份实施例,而不是全部的实施 例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的 所有其它实施例,都属于本申请保护的范围。
[0042] 随着大数据的发展,系统运行日志也海量增多,系统运行维护人员对系统的监控 也就越加艰难,目前的系统运行维护方法是对系统运行中的各项指标逐一设定相应的阈 值,并对其进行监控。该方法监控模式单一,无法发现多个指标之间的关联关系。并且现有 的运行维护系统已经不适应大数据环境下的要求,无法对海量数据进行实时处理和深度挖 掘。
[0043] 现有的运行维护模式是被动运行维护模式,不能提前预测事故发生,进而无法提 前做好事故处理的准备工作,同时无法锁定事故原因,导致事故发生后不能及时的进行故 障处理。
[0044] 基于上述描述,图1示出了本发明实施例中一种系统健康度预测方法的流程,该 流程可以由系统健康度预测装置执行,该装置可以位于运行维护系统内,也可以是运行维 护系统。
[0045] 如图1所示,该流程的具体步骤包括:
[0046] 步骤101,采集系统的日志数据,并建立系统的日志数据的特征变量集。
[0047] 步骤102,确定每个特征变量的波动区间及根据所述多个特征变量的采集频率,确 定时间粒度。
[0048] 步骤103,针对每个特征变量,根据该特征变量的波动区间对该特征变量在所述时 间粒度内的采集值进行预处理,生成系统运行特征数据集。
[0049] 步骤104,根据关联规则挖掘算法对所述系统运行特征数据集进行分析,生成强关 联规则集。
[0050] 在步骤101中,系统的日志数据是系统运行产生的,数据量庞大,而且数据来自多 个不同的数据源,通常是非结构化的、杂乱无章的数据。这些非结构化的日志数据存储在 Hbase数据库中。该系统的日志数据包括但不限于以下日志数据:
[0051] 主机日志:如CPU利用率、内存利用率、10、网络等日志数据。
[0052] 数据库日志:如连接数、查询数、磁盘、临时空间等日志数据。
[0053] 应用日志:如Web连接数、JVM进程数、JVM内存占用量、建立EJB数、缓存EJB数 等日志数据。
[0054] 网络设备日志:如网络端口流量、用户并发连接数、加密机连接数及网络设备本身 的CPU利用率等日志数据。
[0055] 安全日志等其它IT运维监控日志信息。
[0056] 上述日志数据可以是守护进程直接记录的文本文件,也可以是经日志管理工具加 工导出后的文本文件。为了提供更加真实准确的原始数据,保证数据挖掘的准确性,用于建 立特征变量集的日志周期应覆盖一个完整的应用场景周期,以超过1周为宜。并且如果日 志中记录的字段是连续型数值(如CPU负载),采样频率应尽量高,以不少于1分钟1个采 样点为宜。如果日志中记录的是离散型的事件(如应用进程报错),事件发生的频率不宜过 低。
[0057] 在采集上述日志数据后,根据分析所需的基础数据范围,对上述系统的日志数据 进行筛选,确定出该系统的日志数据中可以反映系统运行状况的m个特征变量,建立系统 的日志数据的特征变量集。如可以用集合I = Uj|j = 1、2…m},i表示特征变量,特征变 量可以是CPU的温度,可以是CPU的转速等可以反映系统运行状况的参数,这些参数可以通 过系统的日志数据获取。
[0058] 在步骤102中,根据步骤101中建立的系统的日志数据的特征变量集,可以采用分 位法统计每个特征变量的分布特征,然后根据每个特征变量的分布特征确定每个特征变量 的波动区间。
[0059] 举例来说,本发明实施例可以采用四分位法统计每个特征变量的分布特征,低于 25 %分位数的可以认为该特征变量的取值过低,超过75 %分位数的可认为是该特征变量的 取值过高,25 %~75 %之间认为该特征变量取值合理。然后确定每个特征变量的波动区间, 分为较低、正常、较高三个波动区间,较低波动区间用集合1^= [ni,n2]表示,正常波动区间 用集合[n3,n 4]表示,较高波动区间用集合呒=[n5,n6]表示,其中i表示系统运行的 特征变量,n为特征变量的取值。
[0060] 统计每个特征变量的采集频率分布,将该采集频率分布的中位数的倒数,确定为 时间粒度。时间粒度表示日志数据分析的间隔时间,如每隔时间T对应一条分析记录。统 计每个特征变量的采集频率可以确定T的大小,设m个特征变量的采集频率分别为fl、f2-fm,可以取该m个特征变量的采集频率分布的中位数F,则可以确定时间粒度T = 1/F。通 常T可以为lmin_5min之间。
[0061] 在步骤103中,根据步骤102中确定的时间粒度和每个特征变量的波动区间,对进 行标准化处理后的多个特征变量进行数据整合,生成系统运行特征汇总表。每个特征变量 的波动区间为N个波动区间,确定N个波动区间分别对应的数值,针对每个特征变量,确定 该特征变量在时间粒度内的各采集值对应的波动区间,并将各采集值转换为其所属的波动 区间的值,生成系统运行特征数据集。
[0062] 从采集的日志数据中提取每个特征变量对应的日志记录项,获取每个特征变量的 取值。如果该特征变量的值是连续型数值,提取采样时点值,采样频率k根据不同的特征变 量进行调整,并以时间T内的均值作为该特征变量的值;如果该特征变量是离散型数值,提 取时间T内发生的总次数作为特征变量的值。对上述数据进行汇总,可以得到如表1所示 的系统运行特征汇总表。
[0063]表 1
[0065] 然后根据每个特征变量的波动区间,对上述表1中的特征变量的状态进行变换, 即将系统运行特征汇总表中特征变量的值转换为其所属的波动区间的值,生成系统运行特 征数据集。
[0066] 为了能够更好的使用关联规则挖掘算法,需要对上述表1中特征变量的取值进行 转换,特征变量的取值落入其所属的波动区间,则将该特征变量的取值转换为该波动区间 的值。波动区间的值可以用变量S表示,S=_|〇,l, 0j。其中,S = 0表示特征变量的取值位 于该特征变量的较低波动区间内,s= 1表示特征变量的取值位于该特征变量的较高波动 区间内,S=0表示特征变量的取值位于该特征变量的正常波动区间内。如表1中的特征变 量1,该特征变量1对应的波动区间包括小于1的较低波动区间,位于1和10之间的正常波 动区间和大于10的较高波动区间。tl至t2时刻,特征变量1的取值为2. 92,该取值落入 特征变量1的正常波动区间内,因此,将该时刻的特征变量1的取值转换为0。t2至t3时 亥IJ,特征变量1的取值为17. 30,该取值落入特征变量1的较高波动区间内,因此,将该时刻 的特征变量1的取值转换为1。具体见表2。
[0067] 表 2
[0069] 在步骤104中,关联规则挖掘算法用于对系统运行特征数据集的分析,并且基于 MapReduce技术实现关联规则挖掘,不仅可以确定各特征变量之间的关联关系,还可以真实 的反映系统运行过程中的状态。
[0070] 对于关联规则挖掘算法,首先需要定义支持度和置信度。
[0071] 举例来说,特征变量集合I = Uj | j = 1、2…m}是m个不同特征变量的集合,设集 合X,集合Y为集合I的真子集,并且X O Y # 0,以及步骤103中得到的系统运行特征数 据集D,D = {Dk|k = l、2*"n},集合015是特征变量集合I的子集。设X = {i p i2, i3},Y = {土3,土4,is} 〇
[0072] 根据关联规则挖掘算法确定X j Y是否有强关联规则集。
[0073] 则需要定义规则:X^Y在系统运行特征数据集D中的支持度,支持度指一个项 目集在总项目集I中发生的概率,计算公式如公式(1):
[0075] 置信度是指在已知事件X发生的条件下,事件Y发生的条件概率,计算公式如公式 (2):
[0077] 设支持度阈值为a,表示了系统运行特征变量之间的关联规则的最低重要性。设 置信度阈值为0。支持度大于a的集合称为频繁集。遍历集合D,将D中支持度大于等于 a且置信度大于等于P的集合,确定为强关联规则集,该强关联规则集可以用于预测系统 健康度。
[0078] 在获取:X=>Y的强关联规则集后,如果在一段时间T1内多次发生左手集合X而 没有发生右手集合Y,则可以认为强关联规则集被打破了,系统可能进入亚健康状态,可以 再次通过对强关联规则中的右手集合Y进行分析,可以预测未来时间T2内系统发生某事件 的概率,并提前确定事件发生的源头,帮助运行维护人员在问题发生前采取防范措施。
[0079] 上述实施例表明,通过采集系统的日志数据,并建立系统的日志数据的特征变量 集,对多个特征变量进行标准化处理,确定时间粒度和每个特征变量的波动区间,根据时间 粒度和每个特征变量的波动区间,对进行标准化处理后的多个特征变量进行预处理,生成 系统运行特征数据集,根据关联规则挖掘算法对系统运行特征数据集进行分析,生成强关 联规则集,强关联规则集用于预测系统健康度。通过对多个特征变量进行预处理,将系统的 日志数据转化为可以用于数据挖掘分析的结构化数据,然后通过关联规则挖掘算法随系统 运行特征数据集进行分析,不仅可以确定特征变量之间的关联关系,还可以反映系统运行 过程汇总的状态,对系统运行中的特征变量进行实时监控,能够预测系统未来一段时间内 的运行状态,可以实现在事故发生前预测,事故发生后确定故障来源,便于工作人员快速处 理。
[0080] 基于相同的发明构思,图2示出了本发明实施例提供的一种系统健康度预测装 置,该装置可以执行系统健康度预测流程,该装置可以位于运行维护系统内,也可以是运行 维护系统。
[0081 ] 如图2所示,该装置具体包括:
[0082] 采集单元201,用于采集系统的日志数据,并建立系统的日志数据的特征变量集, 所述特征变量集包括多个用于反映系统运行状况的特征变量;
[0083] 确定单元201,用于确定每个特征变量的波动区间及根据所述多个特征变量的采 集频率,确定时间粒度;
[0084] 预处理单元203,用于针对每个特征变量,根据该特征变量的波动区间对该特征变 量在所述时间粒度内的采集值进行预处理,生成系统运行特征数据集;
[0085] 数据分析单元204,用于根据关联规则挖掘算法对所述系统运行特征数据集进行 分析,生成强关联规则集,所述强关联规则集用于预测系统健康度。
[0086] 优选地,所述确定单元202具体用于:
[0087] 米用分位法统计每个特征变量的分布特征;
[0088] 根据每个特征变量的分布特征,确定每个特征变量的波动区间。
[0089] 优选地,所述确定单元202具体用于:
[0090] 统计所述每个特征变量的采集频率分布;
[0091] 将所述采集频率分布的中位数的倒数,确定为时间粒度。
[0092] 优选地,所述预处理单元203具体用于:
[0093] 每个特征变量的波动区间为N个波动区间,确定所述N个波动区间分别对应的数 值;
[0094] 针对每个特征变量,确定该特征变量在所述时间粒度内的各采集值对应的波动区 间,并将各采集值转换为其所属的波动区间的值,生成系统运行特征数据集。
[0095] 优选地,所述数据分析单元204具体用于:
[0096] 遍历所述系统运行特征数据集,将所述系统运行特征数据集中支持度大于支持度 阈值且置信度大于置信度阈值的集合,确定为所述强关联规则集。
[0097] 本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程 图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一 流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算 机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理 器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生 用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能 的装置。
[0098] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特 定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指 令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或 多个方框中指定的功能。
[0099] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计 算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或 其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图 一个方框或多个方框中指定的功能的步骤。
[0100] 尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造 性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优 选实施例以及落入本申请范围的所有变更和修改。
[0101] 显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精 神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围 之内,则本申请也意图包含这些改动和变型在内。
【主权项】
1. 一种系统健康度预测方法,其特征在于,包括: 采集系统的日志数据,并建立系统的日志数据的特征变量集,所述特征变量集包括多 个用于反映系统运行状况的特征变量; 确定每个特征变量的波动区间及根据所述多个特征变量的采集频率,确定时间粒度; 针对每个特征变量,根据该特征变量的波动区间对该特征变量在所述时间粒度内的采 集值进行预处理,生成系统运行特征数据集; 根据关联规则挖掘算法对所述系统运行特征数据集进行分析,生成强关联规则集,所 述强关联规则集用于预测系统健康度。2. 如权利要求1所述的方法,其特征在于,所述确定每个特征变量的波动区间,包括: 米用分位法统计每个特征变量的分布特征; 根据每个特征变量的分布特征,确定每个特征变量的波动区间。3. 如权利要求1所述的方法,其特征在于,所述根据所述多个特征变量的采集频率,确 定时间粒度,包括: 统计所述每个特征变量的采集频率分布; 将所述采集频率分布的中位数的倒数,确定为时间粒度。4. 如权利要求1所述的方法,其特征在于,所述针对每个特征变量,根据该特征变量 的波动区间对该特征变量在所述时间粒度内的采集值进行预处理,生成系统运行特征数据 集,包括: 每个特征变量的波动区间为N个波动区间,确定所述N个波动区间分别对应的数值; 针对每个特征变量,确定该特征变量在所述时间粒度内的各采集值对应的波动区间, 并将各采集值转换为其所属的波动区间的值,生成系统运行特征数据集。5. 如权利要求1所述的方法,其特征在于,所述根据关联规则挖掘算法对所述系统运 行特征数据集进行分析,生成强关联规则集,包括: 遍历所述系统运行特征数据集,将所述系统运行特征数据集中支持度大于等于支持度 阈值且置信度大于等于置信度阈值的集合,确定为所述强关联规则集。6. -种系统健康度预测装置,其特征在于,包括: 采集单元,用于采集系统的日志数据,并建立系统的日志数据的特征变量集,所述特征 变量集包括多个用于反映系统运行状况的特征变量; 确定单元,用于确定每个特征变量的波动区间及根据所述多个特征变量的采集频率, 确定时间粒度; 预处理单元,用于针对每个特征变量,根据该特征变量的波动区间对该特征变量在所 述时间粒度内的采集值进行预处理,生成系统运行特征数据集; 数据分析单元,用于根据关联规则挖掘算法对所述系统运行特征数据集进行分析,生 成强关联规则集,所述强关联规则集用于预测系统健康度。7. 如权利要求6所述的装置,其特征在于,所述确定单元具体用于: 米用分位法统计每个特征变量的分布特征; 根据每个特征变量的分布特征,确定每个特征变量的波动区间。8. 如权利要求6所述的装置,其特征在于,所述确定单元具体用于: 统计所述每个特征变量的采集频率分布; 将所述采集频率分布的中位数的倒数,确定为时间粒度。9. 如权利要求6所述的装置,其特征在于,所述预处理单元具体用于: 每个特征变量的波动区间为N个波动区间,确定所述N个波动区间分别对应的数值; 针对每个特征变量,确定该特征变量在所述时间粒度内的各采集值对应的波动区间, 并将各采集值转换为其所属的波动区间的值,生成系统运行特征数据集。10. 如权利要求6所述的装置,其特征在于,所述数据分析单元具体用于: 遍历所述系统运行特征数据集,将所述系统运行特征数据集中支持度大于等于支持度 阈值且置信度大于等于置信度阈值的集合,确定为所述强关联规则集。
【文档编号】G06F11/34GK105930255SQ201510672893
【公开日】2016年9月7日
【申请日】2015年10月16日
【发明人】郝建明, 张炼, 马平清, 王巍, 韩智东, 廉宜果
【申请人】中国银联股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1