首页 文学文摘 时政新闻 科技科普 经济法律 健康生活 管理财经 教育教学 文化艺术 社科历史

一种基于内容相似的故障记录检索系统设计方案

作者:李优 来源:电子技术与软件工程

摘 要

大型软硬件系统在运维的过程中会产生大量的故障记录以及相应的维护记录。这些记录对于系统后期的出现故障时可以辅助故障的原因分析并提高故障的定位效率,减小系统的平均恢复时间。然而,从海量的系统故障记录中检索与当前故障相关的记录是一个具有挑战性的任务。本文从故障记录的内容出发,提出一种整合了多种类型信息的故障记录相似性评估标准,设计一个能够支持百万级别故障记录的相似性故障检索系统,为该类系统的的设计与实现提供参考基础。

【关键词】海量数据 故障记录 相似性度量 检索排序

1 引言

计算机技术飞速发展对社会的变革产生了深远的影响,给人们的日常生活带来的各种各样的便利。随着人们的需求不断提高,各种软硬件系统的功能越来越复杂,规模也越来越大。在这种环境下,系统出现故障是不可避免的,因此准确识别系统的故障原因和故障定位是快速恢复系统正常运行的关键。

通常,系统在长期的运维过程中会积累海量的故障记录,这些记录不仅描述了故障的现象,而且还包括了产品信息、故障类型、处理结果、相关部门等重要内容。挖掘和利用内容背后隐藏的信息能够为后续出现的故障判断和定位提供重要的参考价值,可以大幅度地降低系统的平均恢复时间(Mean Time To Repair,MTTR)。然而,从海量的系统故障记录中找到与当前故障相似的记录是一个具有挑战性的任务。

在Web信息检索中,网页排序算法通常利用网页间的链接关系来评估网页的重要性,从而实现检索结果排序,如PageRank、HITS等。在软硬件系统故障的记录中没有类似的链接关系,因此需要新的评估机制来确定检索结果的重要性。本文从故障描述的内容出发,提出一种通过整合故障记录中的各种类型信息的相似性评估机制,设计一个能够支持海量故障记录的检索系统。

2 系统架构

故障检索系统根据功能可以划分为四层:数据存储层、数据管理层、搜索分析层和用户层如图1所示。

数据存储层主要负责原始系统故障记录、一致化的故障记录、故障索引等对象的存储。一般而言,一个大型的复杂系统由不同的部门和用户共同使用和维护,由此会产生不同格式和类型的故障记录,也可能采用不同的存储系统对故障记录进行组织和维护。因此,在这类多源异构的记录数据上需要一个统一的访问接口,实现故障记录的格式一致性处理。

数据管理层主要实现原始故障数据的处理,分别包括数据导入管理模块、故障文件管理模块、文本分词管理模块、索引管理与维护模块以及故障查询模块。数据导入管理模块,负责将外界数据迁移到搜索系统的本地存储空间中,为索引建立提供基础数据。故障文件管理模块的目标是建立故障问题的倒排索引服务,核心操作是通过正则式对文件识别,获得故障数据大文件的分割。文本分词模块负责将故障的简单描述和详细描述中的文本内容划分成一个个独立的词语。同时统计每个文件中每个词语出现的频率(TF)和每个词在所有文件集合中出现的次数(IDF),以过滤无信息含量的词,将有效词语及其信息提交给索引管理模块。索引管理与维护模块针对故障的概要描述和详细描述内容构建倒排索引,系统从通用词语角度进行索引构建,以满足文本相似故障检索的功能需求。问题单查询模块负责从待检索故障集合中返回指定故障的详细信息,其功能建立在索引管理与维护模块的基础上。

预处理模块负责对已有记录和输入记录的文本预处理,包括记录内容的分词,停止词的过滤等,为了能够得到更有意义的分词,还可以进行文本的组块识,产生描述更准确的词组。同时,由于不同的系统会使用很多领域特定的词,因此通过用户词典的维护可以满足不同领域故障的检索。

搜索分析层主要是评估查询输入和已有记录的相似度,并基于此相似度进行查询结果的排序。此外,考虑到查询结果的多样性,应包括一个可以更具不同角度(如故障类型、部门等)进行聚类的模块,将查询结果划分成不同的簇,更方便用户的查阅。

用户层主要包括面向搜索用户的界面模块和面向数据管理用户的界面模块,见图1。

3 故障记录的相似性度量

系统故障记录的相似性度量是实现准确检索的关键,本文从记录的不同类型内容相似性来评估记录的总体相似性。给定一个查询输入d,d可以是一些简单的关键字,也可以是一个故障记录。在故障记录检索中,故障的简要描述是相似性评估的最重要依据。由于词项对于短文本的相似性度量具有重要的作用,因此,针对这部分内容,本文对于一个已有的故障记录r的相似度S1通过式1计算。

(1)

其中, t是一个独立的词项,tf(t,s)为词项t在文档r中出现的频率,idf(t)为词项t在文档集合r中文档频率的倒数。a(d,r) 用于计算评分因子,指文档s中出现查询项的个数。缺省取值为查询项的百分比,即文档d分词后获得查询项在s中匹配的百分比。通过t.W支持查询时期的特殊项t获得高权重。norm(t,r)将文档r权值、词项t权值以及它们的长度等因素统一到一个因子中。

系统故障记录除了故障描述外,还存在其他类型的有价值的信息,例如产品信息、故障类型、处理结果、相关部门等。这些信息和系统故障的判断也有直接的关系。在进行故障记录间的相似度量时,将它们整合进去能够提高检索的准确度和召回率。因此公式(1)可以扩充为:

(2)

其中αi是各类型信息相似性的权重参数,

,S1为故障描述部分的相似性,其计算如公式(1),Si为其他类型信息的相似性,它们的相似性可以根据信息的具体类型进行评估。例如对于部门信息,如果故障记录中的部门一致则这部分相似度为1,否则为0。

4 总结

大型软硬件系统在运维过程中积累的故障描述及其处理记录对系统故障分析和定位具有重要的参考价值。本文围绕系统故障记录的多种类型信息,提出了一种故障记录的相似性评估的策略,设计了一个支持海量故障记录处理的检索系统框架,能够为这类系统的设计与开发提供良好的参考基础。

参考文献

[1]Brin S,Page L.Anatomy of a large-scale hypertextual web search engine[C]//Proceeding 7th International World Wide Web Conference,1998:107-117.

[2]Kleinberg J M.Authoritative sources in a hyperlinked environment[J].Journal of the ACM,199946(5):604-632.

[3]翟延冬,王康平,张东娜等.一种基于WordNet的短文本语义相似性算法[J].电子学报,2012,40(2):617-620.

作者简介

李优,女,硕士学位。现为桂林电子科技大学自动检测技术与仪器重点实验室讲师,主要研究方向为数据分析、信息处理。

作者单位

桂林电子科技大学自动检测技术与仪器重点实验室 广西壮族自治区桂林市 541004