云环境下面向智能运维的KPI异常检测研究
【摘要】:云环境下系统架构与应用服务日益庞大,用户群体复杂多样,为保障云环境下各系统与业务的可靠稳定,对大规模数据的监控与异常检测变得尤为重要。在对关键性监控数据(KPI Key Performance Indicator)进行异常检测时,传统的异常检测方法在云环境中面临着监控数据实例数量多维度高以及KPI数据特征不断变化的挑战。云环境下大量高维度的KPI数据,若直接进行异常检测,会给异常检测系统在异常场景选择与异常检测分析上带来巨大的开销。云环境下用户操作习惯的复杂性使得给定的KPI数据特征可能会在几种类型之间变化,传统的异常检测模型调节方法使得运维人员消耗了巨大的人力成本。为了解决云环境下大规模且数据特征不断变化的KPI数据异常检测问题,本文基于聚类算法与强化学习技术构建了智能化的KPI数据异常检测模型。(1)首先,为了解决监控数据规模庞大带来的数据分析开销大问题,通过对不同数据实例之间的相关性进行分析,利用主成分分析法选出主要成分的数据实例来表示整体数据包含的信息,由此减少重复信息的数量,并利用模糊聚类对选出的数据实例进行分类,使得数据分析工作可以针对特定的、数据量更小的分类数据进行,同时使得异常检测算法可以自适应异常检测场景,减少了场景选择的开销。(2)为了应对云环境下数据特征的变化,本文利用差分技术与统计学指标来判断监控数据全局波动趋势与局部波动趋势之间的关系,识别当前监控数据的数据特征,从而判断数据特征是否发生变化。针对数据特征变化的异常检测模型,本文基于强化学习技术,将异常检测模型的人工调节过程转化为自动的马尔科夫决策过程,并通过设定动态奖励函数优化了强化学习方法的最佳策略求取过程,减少了参数调节的迭代过程,实现了面对数据特征变化时异常检测模型的自动化调节。