一种故障分析方法及装置与流程

文档序号:27511535发布日期:2021-11-22 17:24阅读:103来源:国知局
一种故障分析方法及装置与流程

1.本发明涉及数据分析技术领域,具体涉及一种故障分析方法及装置。


背景技术:

2.对于一个大型企业或组织,其可能存在大量it系统需要运维管理。而随着数据共享和流程互通等技术的发展,各个it系统之间存在各式各样的依赖关系,从而形成一个it系统网络。当it系统网络中的一个对象出现故障,可能会影响多个对象的运行,从而影响企业或组织的稳定运行。因此,如何从具有庞杂网络关系信息的it系统网络中确定受影响的对象,是目前亟需待解决的问题。


技术实现要素:

3.有鉴于此,本发明实施例提供一种故障分析方法及装置,以从具有庞杂网络关系信息的it系统网络中确定受影响的对象。
4.为实现上述目的,本发明实施例提供如下技术方案:
5.本发明实施例第一方面公开一种故障分析方法,所述方法包括:
6.解析it系统网络的故障信息得到故障实体;
7.确定预设的关系图谱中与所述故障实体对应的节点为故障节点,所述关系图谱基于所述it系统网络的各个实体及各个实体之间的关联关系构建得到,每个所述实体为系统模块或数据文件;
8.根据所述关联关系,从所述故障节点出发对所述关系图谱中的节点进行遍历,确定得到所有受到所述故障节点影响的受影响节点。
9.优选的,所述根据所述关联关系,从所述故障节点出发对所述关系图谱中的节点进行遍历,确定得到所有受到所述故障节点影响的受影响节点,包括:
10.根据所述关系图谱及所述故障节点,确定待遍历集合,所述待遍历集合中至少包含所述故障节点和/或受到所述故障节点影响的受影响节点;
11.从所述待遍历集合所包含的所有节点中提取待处理节点,所述待处理节点对应的实体为数据文件;
12.根据所述关联关系,从所述关系图谱中确定所述待处理节点的下游节点;
13.利用所述待处理节点对应的数据文件到达时间点,以及利用所述待处理节点与所述下游节点之间的关系信息,确定所述待处理节点的下游节点是否为受影响节点,将所确定的实体为数据文件的所有受影响节点添加至所述待遍历集合中,返回执行从所述待遍历集合所包含的所有节点中提取待处理节点这一步骤,直至提取不到所述待处理节点。
14.优选的,任意两个相关联的实体之间的关联关系为生产关系、消费关系或依赖关系;
15.所述根据所述关系图谱及所述故障节点,确定待遍历集合,包括:
16.若所述故障节点对应的实体为系统模块,在所述关系图谱中,将与所述故障节点
具有生产关系的数据文件对应的节点作为受到所述故障节点影响的受影响节点,将受到所述故障节点影响的受影响节点添加至待遍历集合中;
17.若所述故障节点对应的实体为数据文件,将所述故障节点添加至所述待遍历集合中。
18.优选的,任意两个相关联的实体之间的关联关系为生产关系、消费关系或依赖关系;
19.所述根据所述关联关系,从所述关系图谱中确定所述待处理节点的下游节点,包括:
20.从所述关系图谱中,确定与所述待处理节点具有消费关系或依赖关系的节点为所述待处理节点的下游节点。
21.优选的,所述待处理节点与所述下游节点之间的关系信息至少包含:约定数据文件到达时间点和容忍时长;
22.所述利用所述待处理节点对应的数据文件到达时间点,以及利用所述待处理节点与所述下游节点之间的关系信息,确定所述待处理节点的下游节点是否为受影响节点,包括:
23.利用所述待处理节点和与其对应的下游节点之间的关系信息,计算约定数据文件到达时间点与容忍时长之间的和值;
24.若所述待处理节点对应的数据文件到达时间点晚于所述和值,确定所述待处理节点的下游节点为受影响节点;
25.若所述待处理节点对应的数据文件到达时间点不晚于所述和值,确定所述待处理节点的下游节点不是受影响节点。
26.优选的,基于it系统网络的各个实体及各个实体之间的关联关系构建关系图谱的过程,包括:
27.获取it系统网络的各个实体,以及获取各个实体之间的关联关系,其中,任意两个相关联的实体之间的关联关系为生产关系、消费关系或依赖关系;
28.将所述实体作为节点,以及将所述关联关系作为边,构建关系图谱。
29.优选的,所述解析it系统网络的故障信息得到故障实体,包括:
30.解析it系统网络的故障信息,确定发生故障的系统模块;
31.若所述发生故障的系统模块导致所有数据文件无法生产,确定所述发生故障的系统模块为故障实体;
32.若所述发生故障的系统模块无法生产目标数据文件,或者,若所述发生故障的系统模块延迟生产和延迟发送所述目标数据文件,确定所述目标数据文件为故障实体。
33.本发明实施例第二方面公开一种故障分析装置,所述装置包括:
34.解析单元,用于解析it系统网络的故障信息得到故障实体;
35.确定单元,用于确定预设的关系图谱中与所述故障实体对应的节点为故障节点,所述关系图谱基于所述it系统网络的各个实体及各个实体之间的关联关系构建得到,每个所述实体为系统模块或数据文件;
36.处理单元,用于根据所述关联关系,从所述故障节点出发对所述关系图谱中的节点进行遍历,确定得到所有受到所述故障节点影响的受影响节点。
37.优选的,所述处理单元包括:
38.第一确定子单元,用于根据所述关系图谱及所述故障节点,确定待遍历集合,所述待遍历集合中至少包含所述故障节点和/或受到所述故障节点影响的受影响节点;
39.提取子单元,用于从所述待遍历集合所包含的所有节点中提取待处理节点,所述待处理节点对应的实体为数据文件;
40.第二确定子单元,用于根据所述关联关系,从所述关系图谱中确定所述待处理节点的下游节点;
41.处理子单元,用于利用所述待处理节点对应的数据文件到达时间点,以及利用所述待处理节点与所述下游节点之间的关系信息,确定所述待处理节点的下游节点是否为受影响节点,将所确定的实体为数据文件的所有受影响节点添加至所述待遍历集合中,返回执行所述提取子单元直至提取不到所述待处理节点。
42.优选的,任意两个相关联的实体之间的关联关系为生产关系、消费关系或依赖关系;所述第一确定子单元具体用于:若所述故障节点对应的实体为系统模块,在所述关系图谱中,将与所述故障节点具有生产关系的数据文件对应的节点作为受到所述故障节点影响的受影响节点,将受到所述故障节点影响的受影响节点添加至待遍历集合中;若所述故障节点对应的实体为数据文件,将所述故障节点添加至所述待遍历集合中。
43.基于上述本发明实施例提供的一种故障分析方法及装置,该方法为:解析it系统网络的故障信息得到故障实体;确定预设的关系图谱中与故障实体对应的节点为故障节点;根据关联关系,从故障节点出发对关系图谱中的节点进行遍历,确定得到所有受到故障节点影响的受影响节点。本方案中,预先利用it系统网络的实体及实体间的关联关系,构建关系图谱。当确定得到关系图谱中的故障节点后,从故障节点出发对关系图谱中的节点进行遍历,确定得到所有受到故障节点影响的受影响节点,以从具有庞杂网络关系信息的it系统网络中识别受到故障影响的实体。
附图说明
44.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
45.图1为本发明实施例提供的一种故障分析方法的流程图;
46.图2为本发明实施例提供的实体之间的关联关系的示意图;
47.图3为本发明实施例提供的确定受影响节点的流程图;
48.图4为本发明实施例提供的故障在节点之间传递的示意图;
49.图5为本发明实施例提供的一种故障分析装置的结构框图。
具体实施方式
50.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他
实施例,都属于本发明保护的范围。
51.在本技术中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
52.由背景技术可知,当it系统网络中的一个对象出现故障,可能会影响多个对象的运行,从而影响企业或组织的稳定运行,而目前的it系统网络中存在大量且繁杂的it系统网络,因此如何从it系统网络中确定受影响的对象是目前亟需待解决的问题。
53.故,本发明实施例提供一种故障分析方法及装置,预先利用it系统网络的实体及实体间的关联关系,构建关系图谱。当确定得到关系图谱中的故障节点后,从故障节点出发对关系图谱中的节点进行遍历,确定得到所有受到故障节点影响的受影响节点,以从具有庞杂网络关系信息的it系统网络中识别受到故障影响的实体。
54.需要说明的是,在本发明实施例所涉及的内容中,存在诸如节点、边、数据文件、系统模块、数据文件到达时点、约定数据文件到达时点、容忍时长、生产关系、消费关系和依赖关系等名词,为更方便理解以下各个实施例中的内容,预先通过以下内容对前述各个名词的具体含义进行解释说明。
55.节点:关系图谱中,节点用于表示和存储实体的数据,节点相当于关系型数据库中的表。每个节点均存在与之对应的类型和属性,每个节点具有唯一标识属性。
56.边:关系图谱中,边用于表示和存储节点与节点之间的关系,例如:a账户转账到b账户,此时“转账”就是节点a和节点b之间的关系,边可记为“a

[转账]

>b”,需要说明的是,边可以具有方向也可不具有方向。
[0057]
数据文件:it系统间数据交互的一种载体。
[0058]
系统模块:it系统内部的相对独立的功能逻辑组成部分,一个it系统可由多个系统模块组成。
[0059]
数据文件到达时点:在进行批量数据文件的交互中,a系统模块将数据文件发送给b系统模块,数据文件传输到达b系统模块的时点即为数据文件到达时点。
[0060]
约定数据文件到达时点:数据接收方约定收到某个数据文件的时点,例如:约定a系统模块发送给b系统模块的c文件需要在每天晚上21:00之前传输到b系统模块,21:00为约定数据文件到达时点。
[0061]
容忍时长:数据接收方可容忍某个数据文件延迟接收的最大时长。
[0062]
生产关系:a系统模块将数据文件c发送给b系统模块,则a系统模块生产数据文件c,生产关系可记为“(a)

[生产]

>(c)”。
[0063]
消费关系:b系统模块接收a系统模块发送的数据文件c,并将其用于实现相应的逻辑功能,则表示b系统模块消费数据文件c,消费关系可记为“(b)

[消费]

>(c)”。
[0064]
依赖关系:如果b系统模块需要加工所接收到的数据文件c才能生产数据文件d,则数据文件d依赖数据文件c,依赖关系可记为“(d)

[依赖]

>(c)”,此时,数据文件d也称为后序数据文件,数据文件c也称为前序数据文件。
[0065]
参见图1,示出了本发明实施例提供的一种故障分析方法的流程图,该故障分析方
法包括:
[0066]
步骤s101:解析it系统网络的故障信息得到故障实体。
[0067]
在具体实现步骤s101的过程中,预先收集it系统网络中的故障信息,解析该故障信息确定发生故障的系统模块。在具体实现中,通过监控工具实时监控各个数据文件是否在规定时间产生,当某个系统模块无法在规定时间生产数据文件,则表示该系统模块为发生故障的系统模块。
[0068]
针对每一发生故障的系统模块,若该发生故障的系统模块导致所有数据文件无法生产,确定该发生故障的系统模块为故障实体,将该发生故障的系统模块对应可表示为:(x:系统模块{系统模块id:n});其中,x表示该发生故障的系统模块,n为x对应的系统模块id。
[0069]
针对每一发生故障的系统模块,若该发生故障的系统模块无法生产目标数据文件,确定该目标数据文件为故障实体,该目标数据文件可表示为:(y:数据文件{数据文件id:m,数据文件到达时点:t});其中,y表示目标数据文件,m为y对应的数据文件id,t为y对应的数据文件到达时点;可以理解的是,由于该目标数据文件无法被发生故障的系统模块生产,在故障修复前,目标数据文件永远不会在某个时点到达目标位置,故此处的目标数据文件的t为无穷大。
[0070]
针对每一发生故障的系统模块,若发生故障的系统模块延迟生产和延迟发送目标数据文件,确定该目标数据文件为故障实体,该目标数据文件可表示为:(y:数据文件{数据文件id:m,数据文件到达时点:t});其中,y表示目标数据文件,m为y对应的数据文件id,t为y对应的数据文件到达时点;可以理解的是,由于该目标数据文件被发生故障的系统模块延迟生产和延迟发送,但依旧会在某个时点到达目标位置,故此处的目标数据文件的t并不是无穷大。
[0071]
步骤s102:确定预设的关系图谱中与故障实体对应的节点为故障节点。
[0072]
需要说明的是,预先基于it系统网络的各个实体及各个实体之间的关联关系构建关系图谱,每个实体为系统模块或数据文件;也就是说,关系图谱中的节点对应it系统网络的实体,关系图谱的任意两个节点之间的边为实体之间的关联关系。
[0073]
在一些实施例中,获取it系统网络的各个实体,以及获取各个实体之间的关联关系,其中,任意两个相关联的实体之间的关联关系为生产关系、消费关系或依赖关系;将实体作为节点,以及将关联关系作为边,构建关系图谱。
[0074]
在一些具体实施例中,从it系统网络的源数据中获取实体及实体间的关联关系,该源数据可以是关系型数据库数据、文本数据或其它类型数据。在获取实体时也获取该实体对应的实体信息,同理,在获取实体间的关联关系时,也获取实体间的关联关系的关系信息(如生产关系的关系信息、消费关系的关系信息和依赖关系的关系信息),实体信息和关系信息详见以下说明。
[0075]
一、系统模块的实体信息
[0076]
系统模块的实体信息至少包含关键信息项和辅助信息项,其中,关键信息项至少包括:系统模块id;辅助信息项至少包括:所属系统,系统模块名称和其它说明性信息;一个it系统可包含多个系统模块。例如表1示出了3个系统模块的实体信息。
[0077]
表1:
[0078][0079]
二、数据文件的实体信息
[0080]
数据文件的实体信息至少包含关键信息项和辅助信息项,其中,关键信息项至少包括:数据文件id和生产文件时长;辅助项信息项至少包括:文件路径、文件名称和其它说明性信息。例如表2示出了批量数据文件的实体信息。
[0081]
表2:
[0082][0083]
三、生产关系的关系信息
[0084]
生产关系的关系信息至少包含关键信息项和辅助信息项,其中,关键信息项至少包括:系统模块id和数据文件id;辅助信息项包括:生产频度和其它说明性信息。例如表3示出了2条生产关系的关系信息。
[0085]
表3:
[0086][0087][0088]
四、消费关系的关系信息
[0089]
消费关系的关系信息至少包含关键信息项和辅助信息项,其中,关键信息项至少包括:系统模块id、数据文件id、预定数据文件到达时点、容忍时长和频度;辅助信息项包括:其它说明性信息。例如表4示出了2条消费关系的关系信息。
[0090]
表4:
[0091][0092]
五、依赖关系的关系信息
[0093]
依赖关系的关系信息至少包含关键信息项和辅助信息项,其中,关键信息项至少包括:前序数据文件id、后续数据文件id、约定数据文件到达时点、容忍时长和频度;辅助信息项包括:其它说明性信息。例如表5示出了2条依赖关系的关系信息。需要说明的是,后续
数据文件依赖前序数据文件。
[0094]
表5:
[0095][0096]
以上是关于实体的实体信息以及各种关联关系的关系信息的内容,综上,实体与实体之间的关联关系为:生产关系(表示系统模块生产数据文件),消费关系(表示系统模块消费数据文件),依赖关系(表示数据文件之间的依赖关系)。生产关系可记为:(系统模块)

[生产]

>(数据文件);消费关系可记为:(系统模块)

[消费]

>(数据文件);依赖关系可记为:(数据文件)

[依赖]

>(数据文件)。
[0097]
如图2示出的实体之间的关联关系的示意图,系统模块与数据文件之间存在消费关系和生产关系,数据文件与数据文件之间存在依赖关系。基于此,将系统模块和数据文件作为节点,将生产关系、消费关系和依赖关系作为边,构建关系图谱。
[0098]
优选的,构建得到关系图谱后,将该关系图谱转化为图数据格式进行存储,具体用于存储关系图谱的数据库可根据实际情况选择,在此不做限定。
[0099]
由上述内容可知,关系图谱中的每个节点都对应一实体,在具体实现步骤s102的过程中,在确定故障实体后,确定关系图谱中与该故障实体对应的节点为故障节点,也就是说,与故障实体对应的节点为故障节点。
[0100]
需要说明的是,所确定的故障实体可以是多个,即可确定得到多个故障节点。
[0101]
步骤s103:根据关联关系,从故障节点出发对关系图谱中的节点进行遍历,确定得到所有受到故障节点影响的受影响节点。
[0102]
由上述内容可知,关系图谱中的每条边指示通过该条边连接的两个节点之间存在关联关系(生产关系、消费关系或依赖关系),在具体实现步骤s103的过程中,根据关联关系,在关系图谱中,从所有故障节点出发对图谱中的节点进行遍历,确定得到所有受到故障节点影响的受影响节点,受影响节点所对应的实体也即为受到故障实体影响的实体。
[0103]
在具体实现中,可采用深度优先方式或广度优先方式,结合关联关系,从故障节点出发对关系图谱中的节点进行遍历,从而识别出所有受到故障节点影响的受影响节点。
[0104]
在本发明实施例中,预先利用it系统网络的实体及实体间的关联关系,构建关系图谱。当确定得到关系图谱中的故障节点后,从故障节点出发对关系图谱中的节点进行遍历,确定得到所有受到故障节点影响的受影响节点,以从具有庞杂网络关系信息的it系统网络中识别受到故障影响的实体。
[0105]
上述本发明实施例图1步骤s103中涉及的确定得到所有受到故障节点影响的受影响节点的过程,参见图3,示出了本发明实施例提供的确定受影响节点的流程图,包括以下步骤:
[0106]
步骤s301:根据关系图谱及故障节点,确定待遍历集合。
[0107]
需要说明的是,在确定得到故障节点后,根据该故障节点和关系图谱所确定的待遍历集合中至少包含:故障节点和/或受到故障节点影响的受影响节点。
[0108]
根据关系图谱中与故障节点相连的边(指示关联关系),可确定得到与该故障节点具有关联关系的节点,待遍历集合在初始状态下为空集,在具体实现步骤s301的过程中,针对每个故障节点,若该故障节点对应的实体为系统模块,在关系图谱中,将与该故障节点具有生产关系的数据文件对应的节点作为受到故障节点影响的受影响节点,将受到该故障节点影响的受影响节点添加至待遍历集合中;若所该故障节点对应的实体为数据文件,将该故障节点添加至待遍历集合中。
[0109]
也就是说,对于每个故障节点,若该故障节点对应的实体为系统模块,则将该故障节点所生产的所有数据文件(也就是与故障节点具有生产关系的数据文件)对应的节点作为受到故障节点影响的受影响节点(此时已经初步识别到部分受影响节点了),并将所确定的受到故障节点影响的受影响节点添加至待遍历集合中,其中,所有受到故障节点影响的受影响节点可记为y∈{y
i
|root

[生产]

>y
i
},y表示故障节点所生产的所有数据文件,root为故障节点,y
i
表示y中的第i个数据文件;若该故障节点对应的实体为数据文件,则直接将该故障节点添加至待遍历集合中。
[0110]
需要说明的是,所确定的故障节点可能存在多个,因此对每个故障节点进行如上述步骤s301中的处理方式,进而确定得到待遍历集合中的内容。
[0111]
也就是说,若所确定的故障节点对应的实体均为数据文件,则各个故障节点经过上述方式处理后,待遍历集合中所包含的内容为故障节点;若所确定的故障节点对应的实体均为系统模块,则各个故障节点经过上述方式处理后,待遍历集合中所包含的内容为受到故障节点影响的受影响节点;若所确定的部分故障节点对应的实体为数据文件,另一部分故障节点对应的实体为系统模块,则各个故障节点经过上述方式处理后,待遍历集合中所包含的内容为故障节点和受到故障节点影响的受影响节点。
[0112]
步骤s302:从待遍历集合所包含的所有节点中提取待处理节点。
[0113]
需要说明的是,待处理节点对应的实体为数据文件。
[0114]
由上述内容可知,所确定的待遍历集合中包含故障节点和/或受到故障节点影响的受影响节点,待遍历集合中的每个故障节点对应的实体为数据文件,每个受到故障节点影响的受影响节点对应的实体为数据文件。在具体实现步骤s302的过程中,以预设方式(如随机方式或者其它方式,此处不做限定),从待遍历集合所包含的所有节点中依次提取出对应的实体为数据文件的节点并将其作为待处理节点,也就是说,所提取的待处理节点对应的实体为数据文件。
[0115]
需要说明的是,对于提取出的每个待处理节点均进行以下步骤s303的处理;并且,从待遍历集合中提取出待处理节点后,被提取出的待处理节点从待遍历集合中移除,即待遍历集合中不包含已经被提取出的待处理节点。
[0116]
步骤s303:根据关联关系,从关系图谱中确定待处理节点的下游节点。
[0117]
可以理解的是,针对每个待处理节点,可确定该待处理节点对应的故障信息,该故障信息至少包含了该待处理节点的数据文件id和数据文件到达时点,此时该待处理节点对应的故障信息可被表示为“(x:数据文件{数据文件id:m,数据文件到达时点:t
a
})”,其中x表示待处理节点,可通过“x.t
a”来表示待处理节点x的数据文件到达时点。
[0118]
在具体实现步骤s303的过程中,针对每个待处理节点,从关系图谱中,确定与该待处理节点具有消费关系或依赖关系的节点为该待处理节点的下游节点(其中的下游表示故
障传递方向)。也就是说,针对每个待处理节点,将通过指示消费关系或依赖关系的边与该待处理节点连接的节点作为该待处理节点的下游节点,即待处理节点通过指示消费关系或依赖关系的边与该下游节点连接。待处理节点与下游节点之间的边可用r表示。
[0119]
步骤s304:利用待处理节点对应的数据文件到达时间点,以及利用待处理节点与下游节点之间的关系信息,确定待处理节点的下游节点是否为受影响节点,将所确定的实体为数据文件的所有受影响节点添加至待遍历集合中,返回执行步骤s302直至提取不到待处理节点。
[0120]
可以理解的是,对于每个待处理节点,该待处理节点与其对应的下游节点之间的关联关系为消费关系或依赖关系,由上述本发明实施例图1步骤s102中的表4和表5示出的内容可知,消费关系和依赖关系的关系信息均存在约定数据文件到达时点和容忍时长。
[0121]
因此,对于每个待处理节点,该待处理节点和与其对应的每个下游节点之间的关系信息至少包含:约定数据文件到达时间点(以r.t
d
表示)和容忍时长(以r.t
e
表示),r表示待处理节点和下游节点之间的边。
[0122]
需要说明的是,待处理节点和下游节点之间的关系信息即为:待处理节点和下游节点之间的关联关系的关系信息。
[0123]
可以理解的是,“下游”表示故障的传递方向,待处理节点可能是故障节点也可能是受到故障节点影响的受影响节点,故需确定待处理节点的每个下游节点是否收到故障影响(也就是需确定下游节点是否为受影响节点)。
[0124]
在具体实现步骤s304的过程中,对于每个待处理节点,及对于该待处理节点的每个下游节点,利用该待处理节点和该下游节点之间的关系信息,计算约定数据文件到达时间点与容忍时长之间的和值;若该待处理节点对应的数据文件到达时间点晚于该和值,确定该待处理节点的该下游节点为受影响节点;若该待处理节点对应的数据文件到达时间点不晚于该和值,确定该待处理节点的该下游节点不是受影响节点。
[0125]
也就是说,对于一个待处理节点x和与其对应的一个下游节点z,若x.t
a
晚于r.t
d
+r.t
e
,则表示该下游节点z为受影响节点(也就是受到故障影响的节点),r.t
e
表示容忍时长,r.t
d
表示约定数据文件到达时间点;若x.t
a
不晚于r.t
d
+r.t
e
,则表示该下游节点z不是受影响节点。
[0126]
需要说明的是,若r.t
d
为确定日期的时点,则x.t
a
晚于r.t
d
+r.t
e
具体是指:x.t
a
>r.t
d
+r.t
e
;若r.t
d
为固定频率的日期时点,则x.t
a
晚于r.t
d
+r.t
e
具体是指:x.t
a
>本轮次应接收数据文件的r.t
d
+r.t
e
;例如:假设r.t
d
为每日21点,r.t
e
为1小时,那么对于2020年1月1日轮次的数据文件发送来说,x.t
a
若晚于2020年1月1日22点,则认为x.t
a
晚于r.t
d
+r.t
e

[0127]
综上,确定下游节点为受影响节点需满足如下规则:
[0128]
z∈{zi|zi

[r:消费or依赖]

>x and r.ta>x.td+te}。
[0129]
通过上述方式,分别确定各个待处理节点的每个下游节点是否为受影响节点。可以理解的是,所确定的每个受影响节点对应的实体可能是系统模块也可能是数据文件。对于每个确定得到的受影响节点,若该受影响节点对应的实体为数据文件时,则可获取该受影响节点z的故障信息,受影响节点z的故障信息可被表示为“(z:数据文件{数据文件id:z的id,数据文件到达时点:max{x.t
a
+z.t
p
}})”,z.t
p
为生产受影响节点z对应的数据文件的时长。
[0130]
需要说明的是,对应所确定得到的实体为数据文件的每个受影响节点,可能存在以下情况:该受影响节点为多个待处理节点的下游节点,即该受影响节点依赖于多个待处理节点,对于每个所依赖的待处理节点可计算得到一个“x.t
a
+z.t
p”,此时该受影响节点的数据文件到达时点取与其对应的所有“x.t
a
+z.t
p”中的最大值。
[0131]
通过以上方式,确定各个待处理节点的下游节点后,确定各个下游节点是否为受影响节点。在本轮次中,确定得到所有受影响节点之后,将所确定的实体为数据文件的所有受影响节点添加至待遍历集合中,返回执行步骤s302,重复执行步骤s302至步骤s304,直至提取不到待处理节点(相当于直至待遍历集合为空集),此时表示已最终识别得到所有的受影响节点。
[0132]
为更好解释说明上述步骤s301至步骤s304中的内容,通过图4示出的故障在节点之间传递的示意图,举例说明如何识别所有的受影响节点。需要说明的是,图4中的边的方向仅用于表示两个节点之间的关联关系的含义。
[0133]
如图4,假设所确定的故障节点为系统模块1,系统模块1与数据文件1之间具有生产关系,即系统模块1生产数据文件1,此时数据文件1为受到系统模块1影响的受影响节点,将数据文件1添加至待遍历集合中(假设此时待遍历集合中只包含数据文件1)。从待遍历集合中提取数据文件1,由于系统模块3与数据文件1之间具有消费关系,数据文件4与数据文件1之间具有依赖关系,系统模块4与数据文件1之间具有消费关系,因此数据文件1的下游节点为:系统模块3、数据文件4和系统模块4,此时待遍历集合为空集(已提取出数据文件1)。
[0134]
假设通过上述步骤s304的方式,确定系统模块3、数据文件4和系统模块4这三个下游节点为受影响节点,将数据文件4这一受影响节点添加至待遍历集合。
[0135]
由于此时待遍历集合中只有数据文件4这一受影响节点,从待遍历集合中提取数据文件4,系统模块5与数据文件4之间具有消费关系,确定系统模块5为数据文件4的下游节点,假设通过上述步骤s304的方式,确定系统模块5为受影响节点,此时待遍历集合中已不包含数据文件4,而系统模块5这一受影响节点的实体为系统模块,不需要将系统模块5添加至待遍历集合中,由于待遍历集合此时已经是空集(也就是上述提及的提取不到待处理节点),结束遍历过程,最终识别得到的所有受影响节点为:数据文件1、系统模块3、数据文件4、系统模块4和系统模块5。
[0136]
通过上述图4示出的内容可知,在识别受影响节点的过程也就是识别故障传递的过程,故障传递方向与生产关系的方向相同,故障传递方向与消费关系和依赖关系的方向相反。
[0137]
在本发明实施例中,根据关系图谱及故障节点确定待遍历集合,从待遍历集合中提取待处理节点,并利用关联关系从关系图谱中确定待处理节点的下游节点。利用待处理节点对应的数据文件到达时间点,以及利用待处理节点与下游节点之间的关系信息,确定待处理节点的下游节点是否为受影响节点。将从下游节点中识别得到的实体为数据文件的所有受影响节点添加至待遍历集合中,返回提取待处理节点这一步骤,直至提取不到待处理节点,从而识别出所有受影响节点,以从具有庞杂网络关系信息的it系统网络中识别受到故障影响的实体。
[0138]
与上述本发明实施例提供的一种故障分析方法相对应,参见图5,本发明实施例还
提供了一种故障分析装置的结构框图,该故障分析装置包括:解析单元501、确定单元502和处理单元503;
[0139]
解析单元501,用于解析it系统网络的故障信息得到故障实体。
[0140]
在具体实现中,解析单元501具体用于:解析it系统网络的故障信息,确定发生故障的系统模块;若发生故障的系统模块导致所有数据文件无法生产,确定发生故障的系统模块为故障实体;若发生故障的系统模块无法生产目标数据文件,或者,若发生故障的系统模块延迟生产和延迟发送目标数据文件,确定目标数据文件为故障实体。
[0141]
确定单元502,用于确定预设的关系图谱中与故障实体对应的节点为故障节点,关系图谱基于it系统网络的各个实体及各个实体之间的关联关系构建得到,每个实体为系统模块或数据文件。
[0142]
在具体实现中,用于构建关系图谱的确定单元502具体用于:获取it系统网络的各个实体,以及获取各个实体之间的关联关系,其中,任意两个相关联的实体之间的关联关系为生产关系、消费关系或依赖关系;将实体作为节点,以及将关联关系作为边,构建关系图谱。
[0143]
处理单元503,用于根据关联关系,从故障节点出发对关系图谱中的节点进行遍历,确定得到所有受到故障节点影响的受影响节点。
[0144]
在本发明实施例中,预先利用it系统网络的实体及实体间的关联关系,构建关系图谱。当确定得到关系图谱中的故障节点后,从故障节点出发对关系图谱中的节点进行遍历,确定得到所有受到故障节点影响的受影响节点,以从具有庞杂网络关系信息的it系统网络中识别受到故障影响的实体。
[0145]
结合图5示出的内容,处理单元503包括:第一确定子单元、提取子单元、第二确定子单元和处理子单元,各个子单元的执行原理如下:
[0146]
第一确定子单元,用于根据关系图谱及所述故障节点,确定待遍历集合,待遍历集合中至少包含故障节点和/或受到故障节点影响的受影响节点。
[0147]
在具体实现中,任意两个相关联的实体之间的关联关系为生产关系、消费关系或依赖关系;第一确定子单元具体用于:若故障节点对应的实体为系统模块,在关系图谱中,将与故障节点具有生产关系的数据文件对应的节点作为受到故障节点影响的受影响节点,将受到故障节点影响的受影响节点添加至待遍历集合中;若故障节点对应的实体为数据文件,将故障节点添加至待遍历集合中。
[0148]
提取子单元,用于从待遍历集合所包含的所有节点中提取待处理节点,待处理节点对应的实体为数据文件。
[0149]
第二确定子单元,用于根据关联关系,从关系图谱中确定待处理节点的下游节点。
[0150]
在具体实现中,任意两个相关联的实体之间的关联关系为生产关系、消费关系或依赖关系;第二确定子单元具体用于:从关系图谱中,确定与待处理节点具有消费关系或依赖关系的节点为待处理节点的下游节点。
[0151]
处理子单元,用于利用待处理节点对应的数据文件到达时间点,以及利用待处理节点与下游节点之间的关系信息,确定待处理节点的下游节点是否为受影响节点,将所确定的实体为数据文件的所有受影响节点添加至待遍历集合中,返回执行提取子单元直至提取不到待处理节点。
[0152]
在具体实现中,待处理节点与下游节点之间的关系信息至少包含:约定数据文件到达时间点和容忍时长;用于确定下游节点是否为受影响节点的处理子单元,具体用于:利用待处理节点和与其对应的下游节点之间的关系信息,计算约定数据文件到达时间点与容忍时长之间的和值;若待处理节点对应的数据文件到达时间点晚于和值,确定待处理节点的下游节点为受影响节点;若待处理节点对应的数据文件到达时间点不晚于和值,确定待处理节点的下游节点不是受影响节点。
[0153]
在本发明实施例中,根据关系图谱及故障节点确定待遍历集合,从待遍历集合中提取待处理节点,并利用关联关系从关系图谱中确定待处理节点的下游节点。利用待处理节点对应的数据文件到达时间点,以及利用待处理节点与下游节点之间的关系信息,确定待处理节点的下游节点是否为受影响节点。将从下游节点中识别得到的实体为数据文件的所有受影响节点添加至待遍历集合中,返回提取待处理节点这一步骤,直至提取不到待处理节点,从而识别出所有受影响节点,以从具有庞杂网络关系信息的it系统网络中识别受到故障影响的实体。
[0154]
综上所述,本方式实施例提供一种故障分析方法及装置,预先利用it系统网络的实体及实体间的关联关系,构建关系图谱。当确定得到关系图谱中的故障节点后,从故障节点出发对关系图谱中的节点进行遍历,确定得到所有受到故障节点影响的受影响节点,以从具有庞杂网络关系信息的it系统网络中识别受到故障影响的实体。
[0155]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0156]
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0157]
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1