基于统计学习的KPI指标异常值检测和根本原因分析
作者单位:上海师范大学
学位级别:硕士
导师姓名:冯朝君
授予年度:2023年
学科分类:08[工学] 0835[工学-软件工程] 081202[工学-计算机软件与理论] 0812[工学-计算机科学与技术(可授工学、理学学位)]
摘 要:随着人工智能、大数据等新技术的迭代与飞速发展,数据规模与网络复杂度日益呈现爆炸式增长。由于各类网站和应用的增多,为了维持更新服务器的性能与质量,企业不断增加服务器数量和规模,这也就导致了IT系统越来越复杂化。针对当前运维的缺陷,需要有一种更高效、智能的运维技术。它可以大幅度提升运维效率和质量,包括监控的便捷部署、系统故障的及时发现与报警、根因定位、以及故障处理的智能决策。本文旨在通过搭建一套微服务架构的故障演练系统,利用Sock-shop、Kebernetes、Chaos Mesh等平台模拟生成微服务架构中会遇到的各类故障和异常情况,之后对微服务架构中的服务级和服务级的各项指标进行采集生成数据集。通过该数据集可以对关键图谱、机器学习、神经网络、非参数检验等技术算法进行支持。随后本文利用统计学的Score检验、机器学习算法、核密度估计算法与深度学习的USAD算法对带有标签的时序数据集进行检验,最终得到结论:相比基于统计检验和机器学习的异常检测算法而言,核密度估计的F1-score整体最高,各指标均能够达到0.9以上。同时,深度学习的USAD的F1-score也能达到较为理想的效果,且不需要频繁调参,只需要一组合理的正常数据即可,故认为USAD深度学习方法在这些算法中是最具有优势的异常检测算法,由于该方法需要正常数据用于对抗训练,这就更体现出了部署微服务架构以获得理想数据的重要性。在根因定位中,本论文所实现的微服务架构应用的故障演练平台可以完全支持Micro RCA算法的开发与调试。本文实现的故障演练系统可定制化地生成微服务架构海量指标的故障数据集,并支持多种主流异常检测与根因定位算法的开发与验证。同时该系统和思想可适用在各种基于微服务架构KPI指标的异常检测与根因定位算法的部署中,可为算法的开发提供模拟数据的支持与增强,提高算法的可学习性与准确性。