首页> 中国专利> 一种基于图形数据库的配置管理数据库系统及实现方法

一种基于图形数据库的配置管理数据库系统及实现方法

摘要

一种基于图形数据库的配置管理数据库系统,包括关系型数据库,原始CMDB中的数据存储模块;图形数据库;数据映射模块,用于将关系型数据库中的配置项实例数据映射入图形数据库;关联分析模块,用于从图形数据库中获取查询条件相关的配置项实例的集合;CMDB查询模块,用于从关系型数据库中查询具体的配置项实例对应的详细分析数据。本发明利用配置项实例间的关系与图数据结构的一致性特点,将具体配置项及关系映射为图形数据库结构,使得将复杂查询分析计算转换成了相对简单的图遍历分析计算,简化了系统逻辑,提高了系统的执行效率,同时还利用图形数据库本身对图数据结构的存储、查询的优化,缩短了关联查询的执行时间。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-02-09

    专利权人的姓名或者名称、地址的变更 IPC(主分类):G06F17/30 变更前: 变更后: 变更前: 变更后: 申请日:20140724

    专利权人的姓名或者名称、地址的变更

  • 2017-06-13

    授权

    授权

  • 2014-12-03

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20140724

    实质审查的生效

  • 2014-10-29

    公开

    公开

说明书

技术领域

本发明涉及数据处理技术领域,特别是涉及一种基于图形数据库的配置 管理数据库系统及实现方法。

背景技术

CMDB(配置管理数据库)是一种存储配置记录,并贯穿其整个生命周期的数 据库。它是个应用系统,构建一个包含IT基础设施和IT服务逻辑模型的CMDB 是进行有效的IT服务管理的基础。CMDB是从两方面来体现它在生产环境中的配 置信息,一方面是具体配置项,另一方面就是具体配置项间的关系。在运营维护 过程中,例如问题管理,或者变更管理,都需要从某个具体配置项出发,通过其 上的关系,找到所有和它有直接或间接关联的其它具体配置项,从而评估问题的 严重程度,或者是变更的涉及范围。关系也就是CMDB能够支持实现关系分析业 务功能的关键基础,因此具体配置项间的关联分析应是CMDB为ITSM提供的重要 基础能力之一。

CMDB目前的数据建模方法为两种:

第一种是应用较广的基于关系型数据库存储的建模(以下简称“关系型数据 库建模”),又大致可细分为以下几种方式:

1)动态字段方式;

数据库中有配置项表,配置项类型表,当用户为配置项新增一个属性时,系 统自动会在配置项表动态填加一个字段。

2)动态表方式;

数据库中有配置项、配置项属性表,当用户新增一个配置项时,就会在配置 项及配置项属性表中新增一笔记录,同时系统自动会在数据库中创建该配置项对 应的实际物理表。

3)冗余字段方式;

数据库中有配置项表、配置项类型表、配置项属性表,在配置项表中固定设 定若干个冗余字段,当用户为配置项新增一个属性时,系统会自动在配置项属性 表中为该属性指定一个相应的冗余字段,以作为该属性在配置项表中的存储字 段。

4)属性列表方式;

数据库中有配置项、配置项属性定义表、配置项属性值表,配置项每新增一 个属性时,会在配置项属性定义表中新增对应的属性定义内容,属性的实际值会 以键值对的形式存储于配置项属性值表。

该方法的做法延续了传统的以关系型数据库作为数据持久化存储的应用程 序设计方式,以一定的牺牲,例如程序的复杂性、配置项属性的受限等,来换取 配置项数据模块的灵活性。它属于传统数据设计方式在CMDB新领域的应用,这 样对项目的开发人员来说,也容易理解、接受,它不影响已有技术的知识积累与 产出成果,后期维护上也比较方便。但是,关系型数据库建模只重点考虑了数据 的建模,在该种建模方式下没能充分表达关系的图数据结构特性,使得关系在关 联分析中使用困难,它需要在结构化下的查询方式下,来实现图数据结构中的遍 历等操作,查询分析语句非常复杂,性能较差,在配置项实例的数量上了一定规 模之后,会出现无法支撑的情况。

第二种建模方法是基于图形数据库的CMDB建模,例如:名称为“一种基于 图形数据库的图形配置管理数据库”的专利(公开号为:CN201210359786.7)。 提供了一种使用图形数据库的数据建模方式,以CI项对应于图形数据库的节点, 以CI间的关系对应图形数据库的边,以CI项上的属性对应于图形数据库的节点 和关系上面的属性。

该方法提出了一种基于NoSQL中的图形数据库对CMDB建模的方法。它利用 了NoSQL在数据结构上的灵活性,避免了关系型数据要先建模后添加数据的方 式,将数据的建模延至数据的产生时,从而达到避免前期严格的数据库设计和表 设计的目的。但这种基于图形数据库的CMDB关注的仍是数据的建模,对于关系 的关联分析应用并没有提及。另外,该专利的关注点在于配置项建模的灵活性, 整个CMDB都是基于图形数据库来建立。但配置项的建模只是CMDB的重要基础功 能之一,并不是功能的全部。如配置项的管理与查询、配置项实例的管理与查询、 数据的权限管理等很多其它重要基础功能并不适合采用图形数据库存储数据的 方式来进行,强行实施开发的话,不仅困难,而且对前期应用关系型数据库开发 出的成果都无法复用,项目的后期维护也增加了很多难度。

综上所述,关系型数据库建模方式是可以解决CMDB数据建模的基础,但它 缺乏对关系的图数据结构描述,以及在此描述上的关联分析的应用,具体应用时, 没有必要因一个功能上的缺陷而导致整个CMDB系统的底层数据持久化方式都要 改变。因此,针对现有技术中存在的问题,亟需在关系型数据库建模方式的基础 上提供一种基于图形数据库的配置管理数据库系统,使得CMDB既能够继续复用 关系型数据库应用开发的知识积累、产出成果、项目维护经验,又能够使用关系 的图数据结构描述,支持大数据量(例如配置项实例个数在百万级以上)的高性 能关联分析。

发明内容

本发明的目的在于避免现有技术中的不足之处而提供一种基于图形数据 库的配置管理数据库系统及实现方法,该配置管理数据库系统在原来基于关系型 数据库建模的CMDB基础上进行设计,使得CMDB既能够继续复用原有的关系型数 据库应用开发的知识积累、产出成果、项目维护经验,又能够使用关系的图数据 结构描述,支持大数据量(例如配置项实例个数在百万级以上)的高性能关联分 析。

本发明的目的通过以下技术方案实现:

一种基于图形数据库的配置管理数据库系统,包括

关系型数据库,原始CMDB中的数据存储模块,用于存储与IT系统所有相 关的信息,它包含了IT基础构架配置项的详细信息;

图形数据库,用于存储关系型数据库中的映射信息;

数据映射模块,用于将关系型数据库中的配置项实例数据映射入图形数据库 中;

关联分析模块,用于根据CMDB查询模块反馈的入口节点,从图形数据库 中获取查询条件相关联的配置项实例的集合,并将查询结果返回给用户;

CMDB查询模块,用于根据用户输入的查询条件,从关系型数据库中获取 入口节点,再将入口节点反馈给关联分析模块;还用于根据具体的配置项实例, 从关系型数据库中查询该配置项实例对应的详细分析数据。

其中,所述数据映射模块的映射规范包括模型映射、业务约束映射、数据约 束映射、索引映射。

其中,所述模型映射具体包括:将关系型数据库中的配置项实例映射为图形 数据库中的节点、将配置项实例的属性映射为节点属性的一部分;将配置项的属 性映射为节点属性的一部分;将关系实例映射为边;将关系映射为边的属性,并 将关系名称固定映射为边类型。

其中,所述关系实例允许存在双向,如果边只能是单向的,则双向的关系实 例会映射为两条互为相反方向的边,而两条边的属性完全一样。

其中,所述关联分析模块设有入口配置项定位模块,所述入口配置项定位模 块用于根据入口节点从图形数据库中获取图配置信息,并根据图配置信息拆分查 询任务。

一种基于图形数据库的配置管理数据库系统的实现方法,包括以下步骤:

CMDB查询模块从关系型数据库中获取建模内容以及配置项实例数据;

数据映射模块将CMDB查询模块获取的建模内容以及配置项实例数据映射 入图形数据库中;

用户输入查询条件;

根据查询条件,CMDB查询模块从关系型数据库中获取入口节点,再将入 口节点反馈给关联分析模块;

关联分析模块根据CMDB查询模块反馈的入口节点,从图形数据库中获取 查询条件相关联的配置项实例的集合,并将查询结果返回给用户;

选择查询结果中用户需要查询的配置项实例,CMDB查询模块从关系型数 据库中获取用户需要查询的配置项实例对应的详细分析数据。

图形数据库的特长在于关联的查询分析,而不在于节点的查询定位,因此, 在大规模环境下,它需要关系型数据库为其提供开始节点定位功能。因此,在大 规模环境下定位开始节点时,需要从关系型数据库先查询出开始节点(入口节 点),再到图数据库根据开始节点为起点关联查出其它节点。

其中,所述“关联分析模块根据CMDB查询模块反馈的入口节点,从图形 数据库中获取查询条件相关的配置项实例的集合,并将查询结果返回给用户”的 具体步骤为:

获取CMDB查询模块从关系型数据库查询到的入口节点;

关联分析模块的入口配置项定位模块根据入口节点从图形数据库中获取图 配置信息;

根据获取的图配置信息判断是否拆分查询任务,

若获取的图配置信息有多项,则将查询任务拆分成多个线程进行,即每项对 应一个线程,最后将多个线程的结果合并返回给用户;

若获取的图配置信息为一项,则直接将结果返回给用户。

其中,所述图配置信息是指入口节点与图形数据库中的第一层节点对应的相 关联的配置项实例的集合。

其中,所述“数据映射模块将CMDB查询模块获取的建模内容以及配置项 实例数据映射入图形数据库”中映射规范包括:模型映射、业务约束映射、数 据约束映射、索引映射。

其中,所述模型映射具体为:将关系型数据库中的配置项实例映射为图形数 据库中的节点、将配置项实例的属性映射为节点属性的一部分;将配置项的属性 映射为节点属性的一部分;将关系实例映射为边;将关系映射为边的属性,并将 关系名称固定映射为边类型;所述关系实例允许存在双向,如果边只能是单向的, 则双向的关系实例会映射为两条互为相反方向的边,而两条边的属性完全一样。

本发明的有益效果:

本发明的基于图形数据库的配置管理数据库系统不改变原有CMDB中的关 系型数据库,将原有的关系型数据库中的配置数据映射为图形数据库数据,将关 系型数据库和图形数据库进行了结合应用,包括数据映射模块、CMDB数据查询 模块和关联查询模块的关联查询模块结构,它实现了与现有CMDB系统进行松耦 合。

本发明利用配置项实例间的关系与图数据结构的一致性特点,将具体配置项 及关系映射为图形数据库结构,使得将复杂查询分析计算转换成了相对简单的图 遍历分析计算,简化了系统逻辑,提高了系统的执行效率,同时还可以利用图形 数据库本身对图数据结构的存储、查询的优化,进一步提升性能,缩短了了关联 查询的执行时间。

附图说明

利用附图对本发明做进一步说明,但附图中的内容不构成对本发明的任 何限制。

图1是本发明的基于图形数据库的配置管理数据库系统的模块结构示意 图。

图2是本发明的关联分析模块的工作流程图。

具体实施方式

结合以下实施例对本发明作进一步说明。

如图1至图2所示,一种基于图形数据库的配置管理数据库系统,包括

关系型数据库,原始CMDB中的数据存储模块,用于存储与IT系统所有相 关的信息,它包含了IT基础构架配置项的详细信息;

图形数据库,用于存储关系型数据库中的映射信息;

数据映射模块,用于将关系型数据库中的配置项实例数据映射入图形数据库 中;数据映射模块在收到映射请求后,首先通过CMDB数据查询模块来获取到配 置项实例数据集合及配置项相关的建模数据,并依据映射规范,将配置项实例数 据映射到图数据库中。

关联分析模块,用于根据CMDB查询模块反馈的入口节点,从图形数据库 中获取查询条件相关联的配置项实例的集合,并将查询结果返回给用户;

CMDB查询模块,用于根据用户输入的查询条件,从关系型数据库中获取 入口节点,再将入口节点反馈给关联分析模块;还用于根据具体的配置项实例, 从关系型数据库中查询该配置项实例对应的详细分析数据。

该基于图形数据库的配置管理数据库系统不改变原有CMDB中的关系型数 据库,将原有的关系型数据库中的配置数据映射为图形数据库数据,将关系型数 据库和图形数据库进行了结合应用,包括数据映射模块、CMDB数据查询模块和 关联查询模块的关联查询模块结构,它实现了与现有CMDB系统进行松耦合。该 系统利用配置项实例间的关系与图数据结构的一致性特点,将具体配置项及关系 映射为图形数据库结构,使得将复杂查询分析计算转换成了相对简单的图遍历分 析计算,简化了系统逻辑,提高了系统的执行效率,同时还可以利用图形数据库 本身对图数据结构的存储、查询的优化,进一步提升性能,缩短了了关联查询的 执行时间。

其中,所述数据映射模块的映射规范包括模型映射、业务约束映射、数据约 束映射、索引映射。在“映射规范”中除基本的配置数据映射外,还考虑了如业 务约束映射、数据约束映射、索引映射之类,保障了数据的合法性,提升了系统 的分析性。

其中,所述模型映射具体包括:将关系型数据库中的配置项实例映射为图形 数据库中的节点、将配置项实例的属性映射为节点属性的一部分;将配置项的属 性映射为节点属性的一部分;将关系实例映射为边;将关系映射为边的属性,并 将关系名称固定映射为边类型,为了支持以后的扩展,需要将关系映射来的属性 与关系实例映射来的属性在名称上进行区分;所述关系实例允许存在双向,如果 边只能是单向的,则双向的关系实例会映射为两条互为相反方向的边,而两条边 的属性完全一样。如:节点支持集合式管理,则配置项标识作为节点固定集合名 称,该标识是不会有重复的,它不应影响配置项标识作为节点属性的存在,这样 有利于在大规模环境下,缩小数据查找范围,提高性能。如果配置项实例在CMDB 的业务管理上,也存在分集合管理,则完全可以参照上述方式进行,以提高数据 查询性能。

业务约束映射尽可能将数据建模中的业务约关系映射入图数据库中。例如图 数据库如果支持唯一性约束,可将“配置项标识+配置项实例标识”建立唯一约 束,以提高数据安全性。

数据约束映射是基于查询为查询当前状况的业务要求,节点、边上的属性只 会保存当前版本内容,也只保留当前有效配置项实例对应的节点及边,历史数据 应删除,以提高数据查询性能。

索引映射是基于本模块的核心为关联分析,且CMDB的数据更新频度不高的 情况,可尽量将用户查询的方式映射入图数据库中。例如图数据库如果支持索引, 则应在节点的集合上,为每个属性都建立索引,以提高数据查询性能。

其中,所述关联分析模块设有入口配置项定位模块,所述入口配置项定位模 块用于根据入口节点从图形数据库中获取图配置信息,并根据图配置信息拆分查 询任务。

一种基于图形数据库的配置管理数据库系统的实现方法,包括以下步骤:

CMDB查询模块从关系型数据库中获取建模内容以及配置项实例数据;

数据映射模块将CMDB查询模块获取的建模内容以及配置项实例数据映射 入图形数据库中;

用户输入查询条件;

根据查询条件,CMDB查询模块从关系型数据库中获取入口节点,再将入 口节点反馈给关联分析模块;

关联分析模块根据CMDB查询模块反馈的入口节点,从图形数据库中获取 查询条件相关联的配置项实例的集合,并将查询结果返回给用户;

选择查询结果中用户需要查询的配置项实例,CMDB查询模块从关系型数 据库中获取用户需要查询的配置项实例对应的详细分析数据。

图形数据库的特长在于关联的查询分析,而不在于节点的查询定位,因此, 在大规模环境下,它需要关系型数据库为其提供开始节点定位功能。因此,在大 规模环境下定位开始节点时,需要从关系型数据库先查询出开始节点(入口节 点),再到图数据库根据开始节点为起点关联查出其它节点。

其中,所述“关联分析模块根据CMDB查询模块反馈的入口节点,从图形 数据库中获取查询条件相关的配置项实例的集合,并将查询结果返回给用户”的 具体步骤为:

获取CMDB查询模块从关系型数据库查询到的入口节点;

关联分析模块的入口配置项定位模块根据入口节点从图形数据库中获取图 配置信息;

根据获取的图配置信息判断是否拆分查询任务,

若获取的图配置信息有多项,则将查询任务拆分成多个线程进行,即每项对 应一个线程,最后将多个线程的结果合并返回给用户;

若获取的图配置信息为一项,则直接将结果返回给用户。

在关联分析中,如果获取的图配置信息对应的是多个配置项实例,可以从这 多个入口并发进行关联分析,以提高系统性能。

其中,所述图配置信息是指入口节点与图形数据库中的第一层节点对应的相 关联的配置项实例的集合。

该模块根据用户输入的查询条件,会首先分析图配置信息的特征,例如配置 项实例归属的配置项,图配置信息中配置项实例的个数。然后依据如图数据库规 模等因素来决定是将关联分析任务拆成多个子任务并发执行,还是以单一任务执 行。最后在执行任务中会分析查询的条件,依据图数据库的遍历策略,利用优化 措施(如利用索引等),进行关联的分析。待执行任务全部完成后,会将所有结 果进行合并再返回给用户。

其中,所述“数据映射模块将CMDB查询模块获取的建模内容以及配置项 实例数据映射入图形数据库”中映射规范包括:模型映射、业务约束映射、数 据约束映射、索引映射。

其中,所述模型映射具体为:将关系型数据库中的配置项实例映射为图形数 据库中的节点、将配置项实例的属性映射为节点属性的一部分;将配置项的属性 映射为节点属性的一部分;将关系实例映射为边;将关系映射为边的属性,并将 关系名称固定映射为边类型;所述关系实例允许存在双向,如果边只能是单向的, 则双向的关系实例会映射为两条互为相反方向的边,而两条边的属性完全一样。

CMDB查询模块被数据映射模块和关联分析模块所调用,为二者提供数据源。

数据映射模块在映射数据时,需要将它要映射的数据范围告之CMDB数据查 询模块,该模块根据CMDB在关系型数据库中存储的建模内容以及配置项实例数 据,获取到要映射的数据来源,例如配置项实例及属性数据,关系及其类型数据 等,返回给数据映射模块以将数据映射到图数据库中。图数据库的优势在于节点 依据关系进行遍历,并不擅长节点的数据过滤,例如按属性值模糊查找节点,因 此这方面需要关系型数据库的辅助以提高性能。例如先利用关系型数据库模糊查 找配置项实例,由配置项实例定位到图数据库中的节点,再直接由该节点开始关 联分析的节点遍历。关联分析模块就可以在关联分析前,依据查询条件确定是否 需要CMDB数据查询模块来协助入口节点的定位,如需要则将入口条件交给CMDB 数据查询模块来过滤数据、定位入口节点,关联查询模块由此入口节点直接开始 进行关联分析,省却入口节点定位的工作。

本方案未改变现有CMDB的底层存储方式,保留了现有技术的优势,使得已 积累的知识、产出成果、项目维护经验可以复用。

本方案的关联查询模块结构,使得其可以和CMDB系统以一种增量添加的形 式进行松耦合集成。这种集成方式一方面使得关联查询模块可以在不影响现有 CMDB系统的情况下,视需求而后期建设,另一方面又使得CMDB系统不因关联分 析的影响而在系统初建时,就对这方面做多过的需求考虑。

最后应当说明的是,以上实施例仅用于说明本发明的技术方案而非对本 发明保护范围的限制,尽管参照较佳实施例对本发明作了详细说明,本领域 的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替 换,而不脱离本发明技术方案的实质和范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号