GAIA:智能运维领域通用公开数据集
# 技术黑板报 # 第二期
推荐阅读时长:10min
为了进一步推动智能运维(AIOps)行业产学研协同发展,通过产业实践反哺学术研究,吸引学者共同探索、挖掘、解决 AIOps 领域问题,云智慧基于超过十年运维领域实践,推出 GAIA(Generic AIOps Atlas)智能运维领域通用公开数据集。
#1 概述
GAIA(智能运维领域通用公开数据集,Generic AIOps Atlas)是用于分析如异常检测,日志分析,故障定位等操作问题的公开数据集。
作为 AIOps 领域首次发布的公开数据集,GAIA 包含超 7 千条指标类数据,超 700 万行日志类数据,以及融合指标、日志、调用链三种数据的融合模态数据。
数据主要来自于云智慧研发的 MicroSS(微服务模拟系统,Micro Simulation System)和已获得授权并进行严格脱敏处理的云智慧用户数据。在此基础上,我们还通过控制用户的行为并模仿对系统的错误操作模拟了真实系统中可能发生的异常。为了方便对根因算法进行公平的评估,我们还提供了所有异常注入的记录。
#2 六大算法问题
基于 GAIA 提供的 AIOps 领域的指标、日志、追踪三个原始数据及一元、二元、转化三种基本运维场景,云智慧根据十年实践经验发布了指标异常检测、日志解析、指标根因分析等六种算法问题。
指标异常检测
场景介绍
当 IT 系统出现故障时,运营商必须保证部署的服务和中间软件有足够的计算和网络资源,解决恶化系统性能的紧急情况,快速找到 IT 系统故障或问题的根本原因。这时候很多监控指标会呈现异常状态。运维算法作为自动发现系统监控指标是否处于异常状态的一种手段,如果使用得当,将及时通知系统出现故障,为进一步的根因分析提供有价值的线索。
因此,指标的异常检测能及时告警,判断系统是否有故障,并且为后续的根因分析提供了宝贵的信息和时间,在 AIOps 中非常重要。
业务说明
对于给定的指标有异常行为的,我们给出了时间序列的每个点标签(0 为正常,1 为异常)。参与者需要通过算法准确判断时序数据中的正常数据点和异常数据点。在我们的数据集中,有周期性数据、平稳数据、具有变化点的数据等不同类型的数据类型,参与者需要准确识别上述不同数据类型下的异常值。
指标预测
场景介绍
AIOps 平台收集的运维数据明确表明其部署的 IT 系统或底层业务发展的运营情况。对于 IT 运营系统的预测至关重要,尤其是在早期获取 IT 设施硬件工作状态信息的背景下,例如 CPU 使用率、磁盘内存,当发生损坏时,这将显著降低计算效率、网络响应速度和 I&O 稳定性。除了对上述硬件指标进行预测外,对与业务绩效相关的关键指标的准确预测,进一步为市场增长趋势和未来预期收入等关键事件的商业洞察提供了依据。可以利用基于感兴趣的关键指标的历史行为的预测来支持资源优化,从而实现设备利用率的最大化和成本的降低、提前警报设备故障、提供对重要事件的业务透视等。
因此,指标预测在 AIOps 中至关重要,它可以让运维团队提前获知设备运行状态,例如 CPU 使用率、磁盘内存和网络响应时间等基本监控,并在未来的库存容量和销售收入中得到指示。
业务说明
在收集用于预测的目标指标之前,参与者需要估计这些指标是否可以预测以及可以预测到什么程度。在 GAIA 数据集中,有不同种类的数据类型,例如周期性数据、线性数据、平稳数据、有变化点的数据等。这里的指标预测任务是对上述数据集来自硬件监控或业务监控的客户给定感兴趣的指标,参与者需要进行时间序列预测并尽可能准确地预测他们的未来,给定历史数据集和了解可能影响预测的任何未来事件。
日志语义异常检测
场景介绍
日志记录了软件系统的详细运行信息,理论上包含了丰富的系统信息。工程师可以检查记录的日志以了解软件系统的状态,检测系统异常并定位根本原因。因此,日志在 IT 运维中扮演着重要的角色。日志异常检测也成为亟待解决的问题。特别是,日志语义包含大量信息,例如日志是否与故障相关联,日志中包含什么类型的异常。日志语义信息的使用有助于检测系统异常并定位系统的根本原因。传统上,工程师只是对可能与故障相关的日志进行关键字搜索,例如“failed”、“kill”等。然而,这种方法既耗时又容易出错,并且工程师还无法获得它的异常类型。
业务说明
此任务分为两个阶段:日志分类和异常类型分类。在日志分类阶段,我们根据日志语义将日志分为正常日志和错误日志。在异常类型分类阶段,我们首先定义了软件系统常见的六种异常:文件/目录操作异常、网络异常、数据库异常、硬件异常、操作系统异常和其他异常。然后,我们检测日志中包含的异常类型。这个任务的输出是一个像(log-type, exception-type)这样的元组。
日志解析
场景介绍
在许多软件系统的开发和维护过程中,日志是必不可少的。它们在系统运行期间记录详细的运行信息,允许开发人员和支持工程师监控他们的系统并分析异常行为和错误。然而,现代软件系统的规模和复杂性不断增加,使得日志量呈爆炸式增长,从而使得传统的手动日志检查方式变得不可行。最近的许多工业工具研究都基于强大的文本搜索和基于机器学习的分析解决方案。由于日志的非结构化性质,第一个关键步骤是将日志消息解析为结构化数据以供后续分析。
业务说明
日志是半结构化文本数据,由常量字符串和变量值组成。常量部分显示了日志消息的事件模板,并且在每次事件发生时都保持不变。变量部分携带感兴趣的动态运行时信息(即参数),在不同的事件发生之间可能会有所不同。 日志解析的目标是将每个日志消息转换为特定的事件模板(例如,“Starting executor ID <*> host <*>”)与关键参数(例如,[“5”,“mesos-slave-07”]),其中“<*>”表示每个参数的位置。并且需要获取对应的所有日志每个日志模板。
命名实体识别(NER)
场景介绍
从非结构化文本中识别和分类命名实体,或命名实体识别(NER),是自然语言处理中的一个核心问题,具有多种应用,如分类、意图分析等。
日志是计算机生成的字符串,其中包含与触发该日志事件操作相关的大量上下文信息。各种系统和设备每天都会生成大量日志消息。该信息既可以是人类可读的,也可以是机器可读的。当出现故障时,运维人员需要读取大量的原始日志,根据日志中的信息定位和解决问题。然而,这些数据类型不同并且数量大,增加了我们理解和感知这些日志消息的复杂性。为了解决这个问题,我们需要确定一种以命名实体形式提取信息的方法,这就是日志分析中的 NER 任务。
作为 NLP 中的一项基础上游任务,NER 不仅可以帮助运维人员节省大量时间,还可以进一步用于其他相关任务。在日志解析任务中,由于命名实体始终是变量,NER 可以指示日志的常量部分和变量,从而获得该日志的模板。
因此,NER 是 AIOps 中的一项重要任务。提取日志中的重要信息,通过将多个日志和指标的信息关联起来,让运维人员免去阅读大量原始日志的麻烦,帮助运维人员快速找出根本原因,从而帮助更快地修复问题。NER 作为 AIOps 中的上游任务,其结果不仅可以用于日志分析,还可以进一步用于其他任务。
业务说明
NER 问题可以看作是一个序列标注问题。在机器学习中,序列标记是一种模式识别任务,涉及将分类标签通过算法分配给观察值序列的每个成员。在日志的上下文中,我们通常将命名实体定义为路径、主机、url、日期、时间等。
虽然 NER 在 NLP 领域已经是比较成熟的任务,但 NER 在日志领域仍然面临很多挑战:
实体不确定性:日志实体通常是无限的、 长度不确定的,例如路径实体,这使得通过字典或相似性方法识别实体变得非常困难。
泛化:不同来源的日志实体通常具有不同的特征。例如 windows 系统中的路径与 Linux 系统中的路径不同。另外,日志中的 NER 对于识别以前没有出现过的实体有更高的要求,因为很多实体在不同的环境中是完全不同的,比如宿主实体。
高性能要求:系统和设备会不断产生大量日志,通常需要处理 GB 级别的日志文件。如何优化模型的性能,使其能够满足 NER 的计算时间要求,也是 NER 实践中的一大挑战。
指标根因分析(MeRCA)
场景介绍
IT 运维旨在保持服务运行的稳定性,不出现故障。因此,运维人员必须保证部署在其上的服务和中间件的计算和网络资源充足,同时解决所有加剧系统性能的紧急情况。快速找到 IT 系统故障或问题的根本原因,是运维人员的重要需求。根因分析作为一种自动地发现系统症状的根本原因的过程,如果使用得当,将节省运维人员在故障定位上花费的大量时间和精力,同时提高准确性。
因此,以便为系统故障提供补救措施,根因分析在 AIOps 中至关重要。在定位系统的根本原因后,运维人员将能够识别问题并进行修复。
业务说明
对于具有异常行为的给定指标,参与者需要通过分析指标之间的因果关系和相关性,找出所有指标的根本原因得分(RCS),作为给定指标的根本原因。
在 MeRCA 中,我们的目标是发现,对于被监控的给定指标处于异常行为中,哪些指标会导致此类症状。这里我们从 MicroSS 中为根因分析任务 MeRCA 选择一个登录场景。此场景模拟以下过程。用户通过扫描系统创建的二维码登录应用程序。这限制在生成二维码后一分钟内完成,否则二维码将从数据库中丢弃,登录失败。
点击下方链接,获取更多 GAIA 数据集信息~
关于GAIA | CloudWise 文档docs.aiops.cloudwise.com/zh/gaia/
编辑于 08-30
版权声明: 本文为 InfoQ 作者【云智慧技术社区】的原创文章。
原文链接:【http://xie.infoq.cn/article/89c2681f54b9e997193a4c493】。文章转载请联系作者。
评论