买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】运维数据关联审计方法、系统、设备及存储介质_携程旅游信息技术(上海)有限公司_201710841864.X 

申请/专利权人:携程旅游信息技术(上海)有限公司

申请日:2017-09-18

公开(公告)日:2020-10-16

公开(公告)号:CN107506484B

主分类号:G06F16/21(20190101)

分类号:G06F16/21(20190101);G06F16/28(20190101);G06Q10/10(20120101)

优先权:

专利状态码:有效-授权

法律状态:2020.10.16#授权;2018.01.16#实质审查的生效;2017.12.22#公开

摘要:本发明提供了一种运维数据关联审计方法、系统、设备及存储介质,该方法包括获取多种实体类型,并将各种所述实体类型分别保存为一顶点;构建所述实体类型的关系图模型;发生审计事件时,获取发生审计的实体的标识信息,并判断发生审计事件的实体对应的待审计实体类型;采用图算法于所述关系图模型中查找与所述待审计实体类型相关联的关联实体类型;根据发生审计的实体的标识信息查找所述关联实体类型中对应的关联实体。本发明通过简单的配置,简化了现有技术中费时费力的关联实体查询方式,将关系错综复杂的运维实体转化为关系图模型中的关系结构,通过图算法遍历关系图模型,从而自动保留实体关系信息数据,极大地提高了运维中问题排查的效率。

主权项:1.一种运维数据关联审计方法,其特征在于,包括如下步骤:获取多种实体类型,并将各种所述实体类型分别保存为一顶点;构建所述实体类型的关系图模型,所述关系图模型包括所述实体类型所对应的顶点和所述顶点之间的关联关系;发生审计事件时,获取发生审计的实体的标识信息,并判断发生审计事件的实体对应的待审计实体类型;采用图算法于所述关系图模型中查找与所述待审计实体类型相关联的关联实体类型;根据发生审计的实体的标识信息查找所述关联实体类型中对应的关联实体;对所述关联实体进行审计,并存储所述发生审计的实体和所述关联实体的审计记录;其中:将所述关系图模型以关系数据格式存储为多条关系型数据记录,各条所述关系型数据记录包括一顶点所对应的实体类型以及该实体类型关联的实体类型,并以关系数据格式存储所述发生审计的实体和所述关联实体的审计记录;存储所述发生审计的实体和所述关联实体的审计记录,包括如下步骤:建立审计事件信息表,所述审计事件信息表包括审计事件的标识信息、审计事件类型、审计事件对应的时间、审计事件对应的实体类型和审计事件对应的实体的标识信息;建立审计事件关系表,所述审计事件关系表包括审计事件的标识信息和审计事件的关联审计事件的标识信息,所述关联审计事件为该审计事件的实体所对应的关联实体的审计事件;所述方法还包括如下步骤:一所述关系型数据记录发生变更时,删除所述审计事件关系表中与所述关系型数据记录对应的关联事件记录;于所述审计事件信息表中查找与所述关系型数据记录对应的审计事件,查找该审计事件所对应的实体的标识信息和实体类型;重新查找与所述待审计实体类型相关联的关联实体类型以及所述关联实体类型中的关联实体,并执行所述关联实体的审计;重新存储所述发生审计的实体和所述关联实体的审计记录至所述审计事件关系表。

全文数据:运维数据关联审计方法、系统、设备及存储介质技术领域[0001]本发明涉及运维审计技术领域,尤其涉及一种基于关系图模型的运维数据关联审计方法、系统、设备及存储介质。背景技术[0002]现有的对运维数据记录审计的方案多采用单数据实体的记录方式,在运维场景下,各个实体关系错综复杂,如果没有一套自动关联的机制,依靠人工逐个关系排查费时费力,导致排查数据问题时比较困难。[0003]例如:应用A部署在集群Pl、P2,集群Pl、P2下分别有服务器SI、S2〜Sn,当服务器Sx信息有发生变化时,通常做法下只记录Sx的实体审计,但应用A和Sx是有关系的,有时应用A出现问题就是由于关联的实体发生更新操作导致的,传统方式下无法立刻得知应用A关联的实体有哪些变更,需要逐一查询,排查问题比较困难。发明内容[0004]针对现有技术中的问题,本发明的目的在于提供一种运维数据关联审计方法、系统、设备及存储介质,将运维实体类型的错综复杂的关系转化为关系图模型,通过图算法遍历关系图模型,查找关联实体类型,从而实现关联实体的查询和审计。[0005]本发明实施例提供一种运维数据关联审计方法,所述方法包括如下步骤:[0006]获取多种实体类型,并将各种所述实体类型分别保存为一顶点;[0007]构建所述实体类型的关系图模型,所述关系图模型包括所述实体类型所对应的顶点和所述顶点之间的关联关系;[0008]发生审计事件时,获取发生审计的实体的标识信息,并判断发生审计事件的实体对应的待审计实体类型;[0009]采用图算法于所述关系图模型中查找与所述待审计实体类型相关联的关联实体类型;[0010]根据发生审计的实体的标识信息查找所述关联实体类型中对应的关联实体;[0011]对所述关联实体进行审计,并存储所述发生审计的实体和所述关联实体的审计记录。[0012]可选地,所述实体类型的关系图模型包括所述实体类型的有向无环图,所述顶点之间的关联关系包括所述顶点之间的指向方向,且所述顶点之间的指向方向与所对应的实体类型的关联数据传递方向相同。[0013]可选地,还包括如下步骤:[0014]将所述关系图模型以关系数据格式存储为多条关系型数据记录,各条所述关系型数据记录包括一顶点所对应的实体类型以及该实体类型关联的实体类型。[0015]可选地,所述关系图模型包括有向图,各条所述关系型数据记录中该实体类型关联的实体类型为该实体类型为所述有向图中,该实体类型的关联数据传递方向的下一实体类型。[0016]可选地,所述关系图模型包括多个有向无环图,各条所述关系型数据记录还包括所对应的有向无环图的标识信息。[0017]可选地,还包括如下步骤:[0018]新增两个实体类型之间的关联关系时,新增一所述关系型数据记录,新增的关系型数据记录包括所述两个实体类型;和或[0019]解除两个实体类型之间的关联关系时,删除所述两个实体类型所对应的关系型数据记录。[0020]可选地,以关系数据格式存储所述发生审计的实体和所述关联实体的审计记录;[0021]各条所述审计记录包括审计事件的标识信息、审计事件类型、审计事件对应的时间、审计事件对应的实体类型和审计事件对应的实体的标识信息。[0022]可选地,存储所述发生审计的实体和所述关联实体的审计记录,包括如下步骤:[0023]建立审计事件信息表,所述审计事件信息表包括审计事件的标识信息、审计事件类型、审计事件对应的时间、审计事件对应的实体类型和审计事件对应的实体的标识信息;[0024]建立审计事件关系表,所述审计事件关系表包括审计事件的标识信息和审计事件的关联审计事件的标识信息,所述关联审计事件为该审计事件的实体所对应的关联实体的审计事件。[0025]可选地,还包括如下步骤:[0026]—所述关系型数据记录发生变更时,删除所述审计事件关系表中与所述关系型数据记录对应的关联事件记录;[0027]于所述审计事件信息表中查找与所述关系型数据记录对应的审计事件,查找该审计事件所对应的实体的标识信息和实体类型;[0028]重新查找与所述待审计实体类型相关联的关联实体类型以及所述关联实体类型中的关联实体,并执行所述关联实体的审计;[0029]重新存储所述发生审计的实体和所述关联实体的审计记录至所述审计事件关系表。[0030]可选地,所述图算法包括广度优先遍历算法和或深度优先遍历算法;[0031]采用图算法于所述关系图模型中查找与所述待审计实体类型相关联的关联实体类型,包括如下步骤:[0032]采用广度优先遍历算法和或深度优先遍历算法于所述有向无环图模型中查找所述待审计实体类型的关联实体类型。[0033]可选地,所述图算法包括深度优先遍历算法和或深度优先遍历算法;[0034]采用图算法于所述关系图模型中查找与所述待审计实体类型相关联的关联实体类型,包括如下步骤:[0035]采用深度优先遍历算法和或深度优先遍历算法于所述有向无环图模型中查找与所述待审计实体类型具有预设查找深度的关联实体类型。[0036]可选地,还包括如下步骤:[0037]统计查找得到的所述关联实体的数量;[0038]如果关联实体的数量小于预设阈值,则进一步增加预设查找深度的值,继续查找与所述待审计实体类型具有预设查找深度的关联实体类型,并查找所述关联实体类型中对应的关联实体。[0039]可选地,还包括如下步骤:[0040]统计所述关联实体中于预设时间段内发生过数据变更的实体的数量;[0041]如果发生过数据变更的关联实体的数量小于预设阈值,则进一步增加预设查找深度的值,继续查找与所述待审计实体类型具有预设查找深度的关联实体类型,并查找所述关联实体类型中对应的关联实体。[0042]可选地,判断所述关联实体中是否存在实体类型和实体的标识信息均相同的重复实体,如果存在,则对于所述重复实体仅记录一次。[0043]本发明实施例还提供一种运维数据关联审计系统,用于实现所述的运维数据关联审计方法,所述系统包括:[0044]关系图模型构件模块,用于获取多种实体类型,并将各种所述实体类型分别保存为一顶点;以及构建所述实体类型的关系图模型,所述关系图模型包括所述实体类型所对应的顶点和所述顶点之间的关联关系;[0045]关联实体类型查找模块,用于发生审计事件时,获取发生审计的实体的标识信息,并判断发生审计事件的实体对应的待审计实体类型;采用图算法于所述关系图模型中查找与所述待审计实体类型相关联的关联实体类型;[0046]关联实体查找模块,用于根据发生审计的实体的标识信息查找所述关联实体类型中对应的关联实体;[0047]运维审计模块,用于对所述关联实体进行审计,并存储所述发生审计的实体和所述关联实体的审计记录。[0048]本发明实施例还提供一种运维数据关联审计设备,包括:[0049]处理器;[0050]存储器,其中存储有所述处理器的可执行指令;[0051]其中,所述处理器配置为经由执行所述可执行指令来执行所述的运维数据关联审计方法的步骤。[0052]本发明实施例还提供一种计算机可读存储介质,用于存储程序,所述程序被执行时实现所述的运维数据关联审计方法的步骤。[0053]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。[0054]本发明所提供的运维数据关联审计方法、系统、设备及存储介质具有下列优点:[0055]本发明通过简单的配置,简化了现有技术中费时费力的关联实体查询方式,将关系错综复杂的运维实体转化为关系图模型中的关系结构,通过图算法遍历关系图模型,从而自动保留实体关系信息数据,极大地提高了运维中问题排查的效率;当新增运维实体或实体关系发生变化时,无需重写算法等实现,就能快速实现关系图模型的结构调整;通过保存的关联审计信息,可以实现关联实体的审计查询,从而提高了系统维护效率,降低开发成本。附图说明[0056]通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显。[0057]图1是本发明一实施例的运维数据关联审计方法的流程图;[0058]图2是一种有向无环图的不意图;[0059]图3是本发明一实施例的多个实体类型的顶点的示意图;[0060]图4是本发明一实施例的实体类型的有向无环图的示意图;[0061]图5〜图8是本发明一实施例的查找关联实体类型的示意图;[0062]图9是本发明一实施例的增加关联关系的有向无环图的示意图;[0063]图10是本发明一实施例的运维数据关联审计系统的结构示意图;[0064]图11是本发明一实施例的运维数据关联审计设备的结构示意图;[0065]图12是本发明一实施例的计算机可读存储介质的结构示意图。具体实施方式[0066]现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。[0067]此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和或处理器装置和或微控制器装置中实现这些功能实体。[0068]如图1所示,所述运维数据关联审计方法包括如下步骤:[0069]SlOO:获取多种实体类型,并将各种所述实体类型分别保存为一顶点;此处实体类型可以包括服务器池、服务器、主机头、站点、访问组、应用、虚拟目录、路径、域名、产品、产品线、组织等等的实体的集合。[0070]S200:构建所述实体类型的关系图模型,所述关系图模型包括所述实体类型所对应的顶点和所述顶点之间的关联关系;[0071]S300:发生审计事件时,获取发生审计的实体的标识信息,并判断发生审计事件的实体对应的待审计实体类型;[0072]S400:采用图算法于所述关系图模型中查找与所述待审计实体类型相关联的关联实体类型;[0073]S500:根据发生审计的实体的标识信息查找所述关联实体类型中对应的关联实体;此处,实体的标识信息即为实体的ID,关联实体和该实体的关联关系是系统预设的。[0074]S600:对所述关联实体进行审计,并存储所述发生审计的实体和所述关联实体的审计记录。[0075]因此,本发明将关系错综复杂的运维实体转化为关系图模型中的关系结构,通过图算法遍历关系图模型,从而自动保留实体关系信息数据,在审计时不仅审计发生审计的实体,还审计与该实体关联的其他实体,极大地提高了运维中问题排查的效率。[0076]进一步地,所述实体类型的关系图模型可以包括实体类型的有向无环图,顶点之间的关联关系包括顶点之间的指向方向,且顶点之间的指向方向与所对应的实体类型的关联数据传递方向相同。有向无环图即DAG,Directedacyclicgraph。[0077]有向图是指一副有方向的图,是由一组顶点(vertices和一组有方向的边edges组成的,每条有方向的边都连接着有序的一对顶点。有向无环图是有向图的一种,也就是指图中没有环,是没有定向循环的有限有向图。即:一个有向图无法从某个顶点出发经过若干条边回到该点,则这个图是一个有向无环图。DAG常被用来表示复杂的拓扑关系,在本发明中用来表示复杂的运维实体关系。[0078]采用DAG关系结构时,步骤S200中,构建DAG关系结构时,首先要整理实体类型之间的关联关系,实体类型之间的关联关系是根据应用场景的部署物理结构和逻辑结构所决定的。然后从业务查询的角度出发,将有可能需要关联查询的实体类型找出来,同时将这些实体类型间的关联关系找出来,将实体间的关系构建成DAG关系结构,根据关系的复杂度,可以为单个DAG图,也可以是多个DAG图。[0079]此处DAG关系构建的原则为:每个实体类型设置为DAG的一个顶点,关联关系就是DAG的边,关联的方向就是关系传递的方向;例如图2中示出的,a实体类型变化时,关联数据会传递给b和c,c会再向下传递给d、e、f,从而保存a、b、c、d、e、f的关联数据;或者当c实体类型变化时,会向下传递给d、e、f,从而保存c、d、e、f的关联数据。[0080]进一步地,本发明的运维数据关联审计方法还包括如下步骤:[0081]将关系图模型以关系数据格式存储为多条关系型数据记录,各条关系型数据记录包括一顶点所对应的实体类型以及该实体类型关联的实体类型。[0082]进一步可选地,关系图模型包括有向图,即有向图中各个顶点之间的关系是有方向性的,各条关系型数据记录中该实体类型关联的实体类型为该实体类型为有向图中,该实体类型的关联数据传递方向的下一实体类型。进一步地,关系图模型可以包括多个有向无环图,各条关系型数据记录还包括所对应的有向无环图的标识信息。[0083]即当采用DAG关系结构时,每个顶点作为一条关系型数据记录,边作为顶点间的关系,方向可以视为关系数据中的父子关系,通过一个字段记录父子关系,这样可以把顶点数据记录串起来成为一个DAG;再通过一个字段记录DAG的编号,就可以在一个表中记录多个DAG;当有新的实体或实体关系发生变化时,只需调整这里的配置即可。即新增两个实体类型之间的关联关系时,只要新增一关系型数据记录,其中包括两个实体类型即可;解除两个实体类型之间的关联关系时,删除两个实体类型所对应的关系型数据记录即可。[0084]步骤S400中,所述图算法可以包括广度优先遍历算法(BFS:BreadthFirstSearch和或深度优先遍历算法DFS:DepthFirstSearch。广度优先遍历算法是指:类似于一个分层搜索的过程,广度优先遍历需要使用一个队列以保持访问过的结点的顺序,以便按这个顺序来访问这些结点的邻接结点。深度优先遍历算法是指:从初始访问结点出发,我们知道初始访问结点可能有多个邻接结点,深度优先遍历的策略就是首先访问第一个邻接结点,然后再以这个被访问的邻接结点作为初始结点,访问它的第一个邻接结点。总结起来可以这样说:每次都在访问完当前结点后首先访问当前结点的第一个邻接结点。这两种算法在实现上结构有所不同,前者一般采用队列实现,后者一般采用递归实现,但最终的结果是一致的,只是计算出实体顶点的顺序会有所有不同。[0085]具体地,步骤S400,采用图算法于有向无环图模型中查找与待审计实体类型相关联的关联实体类型,包括如下步骤:[0086]采用广度优先遍历算法和或深度优先遍历算法于关系图模型中查找待审计实体类型的关联实体类型。此处查找可以是完全遍历,即将关系图模型中所有的关联实体类型均查找出来,也可以是与待审计实体类型具有具有预设查找深度的关联实体类型,例如只查找一层或两层关联实体类型等等,具体查找方式和查找深度可以根据需要设置。[0087]进一步地,本发明的运维数据关联审计方法还可以包括如下步骤:[0088]统计查找得到的关联实体的数量;[0089]如果关联实体的数量小于预设阈值,则进一步增加预设查找深度的值,继续查找与待审计实体类型具有预设查找深度的关联实体类型,并查找关联实体类型中对应的关联实体。[0090]进一步地,还包括如下步骤:[0091]统计关联实体中于预设时间段内发生过数据变更的实体的数量;[0092]如果发生过数据变更的关联实体的数量小于预设阈值,则进一步增加预设查找深度的值,继续查找与待审计实体类型具有预设查找深度的关联实体类型,并查找关联实体类型中对应的关联实体。[0093]即如果只查找一层或两层关联实体类型,查找得到的关联实体很少,或关联度不高,对关联性审计帮助不是很大,可以进一步增加查找深度,查找更多的关联实体类型以及对应的关联实体。[0094]步骤S500中,根据发生审计的实体的标识信息查找所述关联实体类型中对应的关联实体,实体和关联实体之间的关联是系统预设的。例如发生审计的实体是服务器A,其实体类型是服务器,其关联实体类型包括应用和服务器池,而系统已经设定应用B是运行在服务器A中的,服务器A属于服务器池C,即可以获取到服务器A的关联实体包括应用B和服务器池C。查找到关联实体后,进一步需要获取关联实体的ID。[0095]步骤S600中,进一步地,可以5.将数据审计记录以关系数据格式存储:在DAG的计算过程中,每找到一个顶点,就查询出上一个顶点的实体和当前顶点实体的关系数据,通过记录实体的类型和主键将审计记录以关系数据格式存储下来。[0096]至此,通过上述步骤就完成了DAG关系结构的设计、构建、计算和存储,在此基础上就可以根据需要进行查询操作了。因此,该实施例的技术方案通过预先配置的DAG关系结构,在运维实体数据发生变化时,通过有向传递,将实体自身的审计数据和关联关系两者同时保存下来,完整记录了审计发生时的现场数据,实现可以对关联实体的审计查询。[0097]通过该实施例的实施,使得原来费时费力的关联实体查询变得简单,通过关联审计,可以方便快速的排查实体和关联实体的审计情况,极大地提高了运维中问题排查的效率。如果有新的实体或者实体间关系有变化,只需简单地修改DAG关系配置,无需修改算法等其他程序,就可以实现调整,较佳地提高了系统维护效率,降低开发成本。[0098]如图3〜9所示,为本发明一具体实施例中运维数据关联审计的方法执行过程的示意图。其中,图3示例性地示出了该实施例中实体类型的有向无环图的顶点的组成。在该图中,箭头表示一对多的关系。例如,服务器指向服务器池,服务器和服务器池是多对一的关系,服务器和访问组可以是一对多的关系,也可以是多对一的关系,站点和虚拟目录是一对多的关系等等。图3中示出的仅为一种示例性结构,实际应用中的实体类型不限于此,例如还可以有路径等等。[0099]在构建DAG关系结构时,如图4所示,选择需要记录审计关系的实体类型,并设计有向关系。即图中选择了服务器、路径、访问组、虚拟目录、应用和服务器池,并且采用箭头表示了其中的指向性。即服务器数据变更时,关联数据会传递到访问组和服务器池,即箭头表示了关联数据传递的方向。[0100]可以将DAG关系结构以关系数据格式存储,存储形式可以如下表1所示。此处id为序列号;path_no含义为DAG的标识,相同的path_no代表是同一个DAG;entity_type是实体标识,也就是DAG中的顶点;p_entity_type是父级的实体标识,也就是DAG中的边,关系传递方向就是DAG中边的方向。[0101]表IDAG关系结构的关系数据表[0103]其中,server即为服务器,route即为路径,access_group即为访问组,virtual—directory即为虚拟目录,poolS卩为服务器池,app即为应用。[0104]然后通过图算法广度优先遍历或深度优先遍历算法进行数据审计记录。当有实体发生审计事件时,先记录自身的审计数据,然后可以从发生数据变更的实体对应的实体类型的顶点开始,采用图算法查找关联实体类型,再进一步查找关联实体。查找关联实体类型的过程可以参照图5〜图8。例如,当服务器A发生数据变更时,判断服务器A的实体类型为服务器,从服务器顶点开始,先记录自身的审计如图5所示),然后采用广度优先遍历算法,得到并记录访问组和服务器池作为关联实体类型(如图6所示),再进一步得到并记录虚拟目录作为关联实体类型(如图7所示),再进一步得到并记录应用作为关联实体类型(如图8所示)。在查找关联实体类型时,如上所示,可以设置预设查找深度,例如设置深度为1,则只得到访问组和服务器池作为关联实体类型,而不再继续查找,设置深度为2,则进一步得到虚拟目录作为关联实体类型等等。在查找到关联实体类型后,再进一步查找每个关联实体类型中与服务器A相关联的关联实体,例如在访问组中查找得到访问组D,在虚拟目录中查找得到虚拟目录E,在服务器池中查找得到服务器池C,在应用中查找到应用B。审计并记录关联实体的审计结果。[0105]进一步地,所述运维数据关联审计方法还可以包括判断关联实体中是否存在实体类型和实体的标识信息均相同的重复实体的步骤,如果存在重复实体,则对于重复实体仅记录一次。[0106]例如,在该实例中,服务器可以关联到服务器池,虚拟目录也可以关联到服务器池,如果不加额外控制,经过搜索算法得出的结果就会出现同一个实体多次被记录的情况,这时可以加入过滤功能,在一次关联事件中,如果同一个实体实体类型和实体ID相同)多次出现,那么只需要记录一次即可。[0107]进一步地,可以将数据审计记录以关系数据格式存储,在上述的遍历过程中,逐条将实体信息以及关系数据格式存储,主要包括审计事件信息表和审计事件实体关系表。[0108]审计事件信息表可以包括审计事件的主键id、审计事件类型、审计事件信息、审计事件对应的时间、审计事件对应的实体类型和审计事件对应的实体的标识信息;示例的表格如下表2所示。[0109]表2审计事件信息表[0110][0111]审计事件关系表包括审计事件的主键id和审计事件的关联审计事件的主键id,关联审计事件为该审计事件的实体所对应的关联实体的审计事件。即通过一个审计事件的主键id就可以查询到与该审计事件关联的其他审计事件。[0112]进一步地,所述运维数据关联审计方法还可以包括如下步骤:[0113]—关系型数据记录发生变更时,删除审计事件关系表中与关系型数据记录对应的关联事件记录;[0114]于审计事件信息表中查找与关系型数据记录对应的审计事件,查找该审计事件所对应的实体的标识信息和实体类型;[0115]重新查找与待审计实体类型相关联的关联实体类型以及关联实体类型中的关联实体,并执行关联实体的审计;[0116]重新存储发生审计的实体和关联实体的审计记录至审计事件关系表。[0117]即如果修改了DAG关系结构,对历史的审计事件也想一并调整关联关系,只需删除“审计事件关系表”中相应审计事件的数据,然后重新根据“审计事件信息表”的事件运行一遍算法和记录程序,就可以自动将关联关系调整为新的DAG关系。[0118]然后可以根据“审计事件信息表”和“审计事件关系表”对审计信息进行查询。示例如下:[0119]a查询某个Pool实体的事件审计:如果只需要按传统方式查询该Pool实体自身的审计信息,可以这样查询:SELECTei·create_ts时间,ei·entity_type事件实体,ei·entity_id实体ID,ei·event_type操作类型,ei·event_msg操作内容,ei·id事件ID[0120]FROMcms_event_infoei[0121]WHEREei.entity_type=’pool’ANDei.entity_id=’8258’[0122]查询结果如下表3所示。[0123]表3Pool实体审计事件查询结果[0126]b查询某个Pool实体下关联的事件审计,可以这样查询:SELECTei.create_ts时间,ei·entity_type事件源实体,ei·entity_id源实体ID,ee·entity_type关联实体,ei·event_type操作类型,ei·event_msg操作内容,ei·id事件ID[0127]FROMcms_event_infoei[0128]INNERJOINcms_event_entityeeONei.id=ee.event_info_id[0129]WHEREee·entity_type=’pool’ANDee·entity_id=’8258’[0130]其中“事件源实体”就是发生更新事件的原始实体,“事件实体”是通过关联后记录到了该查询的实体上。查询结果可以参照下表4所示。[0131]表4实体关联审计事件查询结果[0132][0133]c根据事件ID查询:可以这样查询:SELECTei·create_ts时间,ei·entity_type事件源实体,ei.entity_id源实体10,66.6111:;^7_17口6关联实体,66.6111:;^7」1关联实体ID,ei·event_type操作类型,ei·event_msg操作内容,ei·id事件ID[0134]FROMcms_event_infoei[0135]INNERJOINcms_event_entityeeONei.id=ee.event_info_id[0136]WHEREei.id=1891080[0137]就可以得到该事件发生时整条关联链上的情况。查询结果可以参照如下表5所示。[0138]表5事件ID查询审计事件信息表[0139][0140][0141]因此,通过采用该实施例的运维数据关联审计方法,通过预先配置的DAG关系结构,在运维实体数据发生变化时,通过有向传递,将实体自身的审计数据和关联关系两者同时保存下来,完整记录了审计发生时的现场数据,实现可以对关联实体的审计查询。使得原来费时费力的关联实体查询变得简单,通过关联审计,可以方便快速的排查实体和关联实体的审计情况。[0142]本发明实施例还提供一种运维数据关联审计系统,用于实现的运维数据关联审计方法,所述系统包括关系图模型构件模块100、关联实体类型查找模块200、关联实体查找模块300和运维审计模块400,其中:[0143]所述关系图模型构件模块100用于获取多种实体类型,并将各种实体类型分别保存为一顶点;以及构建实体类型的关系图模型,关系图模型包括实体类型所对应的顶点和顶点之间的关联关系;所述关联实体类型查找模块200用于发生审计事件时,获取发生审计的实体的标识信息,并判断发生审计事件的实体对应的待审计实体类型;采用图算法于有向无环图模型中查找与待审计实体类型相关联的关联实体类型;所述关联实体查找模块300用于根据发生审计的实体的标识信息查找关联实体类型中对应的关联实体;所述运维审计模块400用于对关联实体进行审计,并存储发生审计的实体和关联实体的审计记录。[0144]进一步地,所述运维数据关联审计系统还可以包括审计记录查询模块500,用于对审计事件信息和审计事件之间的关联进行查询。[0145]该运维数据关联审计系统将关系错综复杂的运维实体转化为关系图模型中的关系结构,通过图算法遍历关系图模型,从而自动保留实体关系信息数据,在审计时不仅审计发生审计的实体,还审计与该实体关联的其他实体,极大地提高了运维中问题排查的效率。[0146]本发明实施例还提供一种运维数据关联审计设备,包括处理器;存储器,其中存储有所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行所述的运维数据关联审计方法的步骤。[0147]所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“平台”。[0148]下面参照图11来描述根据本发明的这种实施方式的电子设备600。图11显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。[0149]如图11所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同平台组件包括存储单元620和处理单元610的总线630、显示单元640等。[0150]其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述电子处方流转处理方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图1中所示的步骤。[0151]所述存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元RAM6201和或高速缓存存储单元6202,还可以进一步包括只读存储单元ROM6203。[0152]所述存储单元620还可以包括具有一组(至少一个程序模块6205的程序实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。[0153]总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。[0154]电子设备600也可以与一个或多个外部设备700例如键盘、指向设备、蓝牙设备等通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备例如路由器、调制解调器等等通信。这种通信可以通过输入输出(IO接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络例如局域网(LAN,广域网WAN和或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储平台等。[0155]采用该运维数据关联审计设备,所述处理器运行所述存储单元中的程序代码时,将关系错综复杂的运维实体转化为关系图模型中的关系结构,通过图算法遍历关系图模型,从而自动保留实体关系信息数据,在审计时不仅审计发生审计的实体,还审计与该实体关联的其他实体,极大地提高了运维中问题排查的效率。[0156]本发明实施例还提供一种计算机可读存储介质,用于存储程序,所述程序被执行时实现所述的运维数据关联审计方法的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述电子处方流转处理方法部分中描述的根据本发明各种示例性实施方式的步骤。[0157]参考图12所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器CD-ROM并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。[0158]所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子非穷举的列表包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器RAM、只读存储器ROM、可擦式可编程只读存储器EPROM或闪存)、光纤、便携式紧凑盘只读存储器CD-ROM、光存储器件、磁存储器件、或者上述的任意合适的组合。[0159]所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。[0160]可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言一诸如Java、C++等,还包括常规的过程式程序设计语言一诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网LAN或广域网WAN,连接到用户计算设备,或者,可以连接到外部计算设备例如利用因特网服务提供商来通过因特网连接)。[0161]采用该计算机可读存储介质,计算机运行该存储介质中的程序代码时,可以将关系错综复杂的运维实体转化为关系图模型中的关系结构,通过图算法遍历关系图模型,从而自动保留实体关系信息数据,在审计时不仅审计发生审计的实体,还审计与该实体关联的其他实体,从而极大地提高了运维中问题排查的效率。[0162]综上所述,本发明所提供的运维数据关联审计方法、系统、设备及存储介质具有下列优点:[0163]本发明通过简单的配置,简化了现有技术中费时费力的关联实体查询方式,将关系错综复杂的运维实体转化为关系图模型中的关系结构,通过图算法遍历关系图模型,从而自动保留实体关系信息数据,极大地提高了运维中问题排查的效率;当新增运维实体或实体关系发生变化时,无需重写算法等实现,就能快速实现关系图模型的结构调整;通过保存的关联审计信息,可以实现关联实体的审计查询,从而提高了系统维护效率,降低开发成本。[0164]以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

权利要求:1.一种运维数据关联审计方法,其特征在于,包括如下步骤:获取多种实体类型,并将各种所述实体类型分别保存为一顶点;构建所述实体类型的关系图模型,所述关系图模型包括所述实体类型所对应的顶点和所述顶点之间的关联关系;发生审计事件时,获取发生审计的实体的标识信息,并判断发生审计事件的实体对应的待审计实体类型;采用图算法于所述关系图模型中查找与所述待审计实体类型相关联的关联实体类型;根据发生审计的实体的标识信息查找所述关联实体类型中对应的关联实体;对所述关联实体进行审计,并存储所述发生审计的实体和所述关联实体的审计记录。2.根据权利要求1所述的运维数据关联审计方法,其特征在于,所述实体类型的关系图模型包括所述实体类型的有向无环图,所述顶点之间的关联关系包括所述顶点之间的指向方向,且所述顶点之间的指向方向与所对应的实体类型的关联数据传递方向相同。3.根据权利要求1所述的运维数据关联审计方法,其特征在于,还包括如下步骤:将所述关系图模型以关系数据格式存储为多条关系型数据记录,各条所述关系型数据记录包括一顶点所对应的实体类型以及该实体类型关联的实体类型。4.根据权利要求3所述的运维数据关联审计方法,其特征在于,所述关系图模型包括有向图,各条所述关系型数据记录中该实体类型关联的实体类型为该实体类型为所述有向图中,该实体类型的关联数据传递方向的下一实体类型。5.根据权利要求4所述的运维数据关联审计方法,其特征在于,所述关系图模型包括多个有向无环图,各条所述关系型数据记录还包括所对应的有向无环图的标识信息。6.根据权利要求3所述的运维数据关联审计方法,其特征在于,还包括如下步骤:新增两个实体类型之间的关联关系时,新增一所述关系型数据记录,新增的关系型数据记录包括所述两个实体类型;和或解除两个实体类型之间的关联关系时,删除所述两个实体类型所对应的关系型数据记录。7.根据权利要求3所述的运维数据关联审计方法,其特征在于,以关系数据格式存储所述发生审计的实体和所述关联实体的审计记录;各条所述审计记录包括审计事件的标识信息、审计事件类型、审计事件对应的时间、审计事件对应的实体类型和审计事件对应的实体的标识信息。8.根据权利要求7所述的运维数据关联审计方法,其特征在于,存储所述发生审计的实体和所述关联实体的审计记录,包括如下步骤:建立审计事件信息表,所述审计事件信息表包括审计事件的标识信息、审计事件类型、审计事件对应的时间、审计事件对应的实体类型和审计事件对应的实体的标识信息;建立审计事件关系表,所述审计事件关系表包括审计事件的标识信息和审计事件的关联审计事件的标识信息,所述关联审计事件为该审计事件的实体所对应的关联实体的审计事件。9.根据权利要求8所述的运维数据关联审计方法,其特征在于,还包括如下步骤:一所述关系型数据记录发生变更时,删除所述审计事件关系表中与所述关系型数据记录对应的关联事件记录;于所述审计事件信息表中查找与所述关系型数据记录对应的审计事件,查找该审计事件所对应的实体的标识信息和实体类型;重新查找与所述待审计实体类型相关联的关联实体类型以及所述关联实体类型中的关联实体,并执行所述关联实体的审计;重新存储所述发生审计的实体和所述关联实体的审计记录至所述审计事件关系表。10.根据权利要求1所述的运维数据关联审计方法,其特征在于,所述图算法包括广度优先遍历算法和或深度优先遍历算法;采用图算法于所述关系图模型中查找与所述待审计实体类型相关联的关联实体类型,包括如下步骤:采用广度优先遍历算法和或深度优先遍历算法于所述有向无环图模型中查找所述待审计实体类型的关联实体类型。11.根据权利要求1所述的运维数据关联审计方法,其特征在于,所述图算法包括深度优先遍历算法和或深度优先遍历算法;采用图算法于所述关系图模型中查找与所述待审计实体类型相关联的关联实体类型,包括如下步骤:采用深度优先遍历算法和或深度优先遍历算法于所述有向无环图模型中查找与所述待审计实体类型具有预设查找深度的关联实体类型。12.根据权利要求11所述的运维数据关联审计方法,其特征在于,还包括如下步骤:统计查找得到的所述关联实体的数量;如果关联实体的数量小于预设阈值,则进一步增加预设查找深度的值,继续查找与所述待审计实体类型具有预设查找深度的关联实体类型,并查找所述关联实体类型中对应的关联实体。13.根据权利要求11所述的运维数据关联审计方法,其特征在于,还包括如下步骤:统计所述关联实体中于预设时间段内发生过数据变更的实体的数量;如果发生过数据变更的关联实体的数量小于预设阈值,则进一步增加预设查找深度的值,继续查找与所述待审计实体类型具有预设查找深度的关联实体类型,并查找所述关联实体类型中对应的关联实体。14.根据权利要求1所述的运维数据关联审计方法,其特征在于,判断所述关联实体中是否存在实体类型和实体的标识信息均相同的重复实体,如果存在,则对于所述重复实体仅记录一次。15.—种运维数据关联审计系统,用于实现权利要求1至14中任一项所述的运维数据关联审计方法,其特征在于,所述系统包括:关系图模型构件模块,用于获取多种实体类型,并将各种所述实体类型分别保存为一顶点;以及构建所述实体类型的关系图模型,所述关系图模型包括所述实体类型所对应的顶点和所述顶点之间的关联关系;关联实体类型查找模块,用于发生审计事件时,获取发生审计的实体的标识信息,并判断发生审计事件的实体对应的待审计实体类型;采用图算法于所述关系图模型中查找与所述待审计实体类型相关联的关联实体类型;关联实体查找模块,用于根据发生审计的实体的标识信息查找所述关联实体类型中对应的关联实体;运维审计模块,用于对所述关联实体进行审计,并存储所述发生审计的实体和所述关联实体的审计记录。16.—种运维数据关联审计设备,其特征在于,包括:处理器;存储器,其中存储有所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至14中任一项所述的运维数据关联审计方法的步骤。17.—种计算机可读存储介质,用于存储程序,其特征在于,所述程序被执行时实现权利要求1至14中任一项所述的运维数据关联审计方法的步骤。

百度查询: 携程旅游信息技术(上海)有限公司 运维数据关联审计方法、系统、设备及存储介质

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。