Graph database-based CMDB configuration management system and method

By using a graph database-based CMDB configuration management system, the problem of low efficiency in attribute modification and relation query in existing CMDB systems is solved. It enables flexible attribute configuration and efficient path query, thereby improving the overall operating efficiency and flexibility of the system.

CN121071184APending Publication Date: 2025-12-05RICHFIT INFORMATION TECH +1
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202410707467.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-06-03
Publication Date
2025-12-05

AI Technical Summary

Technical Problem

The existing CMDB configuration management system relies on a relational database, which makes it inflexible in dealing with changes in configuration item attributes, and inefficient in querying configuration item relationships and tracing paths, making it difficult to meet actual business needs.

Method used

The CMDB configuration management system, which uses graph databases and consists of model grouping units, attribute units, relationship units, and topology graph units, simplifies changes to model and configuration item attributes and adjustments to relationships. It utilizes the non-relational storage of graph databases and topology graphs to display the relationships between configuration items.

Benefits of technology

It enables flexible attribute configuration, efficient configuration item relationship management, and powerful path query capabilities in the CMDB system, improving the system's operating efficiency and flexibility, and simplifying data operation and maintenance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121071184A_ABST
    Figure CN121071184A_ABST
Patent Text Reader

Abstract

The invention discloses a CMDB configuration management system and method based on a graph database. The system comprises the following units, each unit corresponds to a node in a graph database, and the edge of the node represents the unit relationship: a model grouping unit for managing the grouping information of a model; the model attribute unit is used for managing attributes of the model, so that the attributes can be automatically provided for selection when the attributes are configured for the model; the model management unit is used for creating and managing a specific model; the model relation unit is used for creating and managing a specific model relation; the configuration item management unit is used for creating and managing model configuration items; the configuration item relation unit is used for creating and managing a configuration item relation; and the configuration item topological graph unit is used for displaying the configuration items in a topological graph form based on the management information of the configuration item management unit and the configuration item relation unit. According to the system, by means of the powerful advantages of the graph database, model and configuration item attribute change and association relation adjustment are simplified, and the overall operation efficiency of the CMDB is improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of computer software, in particular to a CMDB configuration management system and method based on a graph database. BACKGROUND

[0002] A configuration management database (CMDB) is a logical database that contains information about the entire life cycle of configuration items and the relationships between configuration items (including physical relationships, real-time communication relationships, non-real-time communication relationships, and dependency relationships).

[0003] The properties of the configuration items of a CMDB change frequently, and the relationships between the configuration items are complex and highly interconnected. These path relationships between the configuration items play a crucial role in business operations. However, most current CMDB configuration management systems rely on relational databases for information storage and retrieval, and the implementation methods are not flexible enough when dealing with changes in configuration item properties. In addition, the existing implementation methods for querying and tracking the relationships between configuration items are too complex and inefficient, and cannot meet the actual business needs. SUMMARY

[0004] In order to at least partially solve the technical problems existing in the prior art, the present application is made by the inventors, and through specific embodiments, a CMDB configuration management system and method based on a graph database are provided. With the strong advantages of a graph database, the adjustment of model and configuration item property changes and associated relationships is simplified, and the overall operation efficiency of the CMDB is improved.

[0005] In a first aspect, an embodiment of the present application provides a CMDB configuration management system based on a graph database, comprising

[0006] The following units, each corresponding to a node in the graph database, the information and direction of the edges of the node representing the relationship of the corresponding unit:

[0007] A model grouping unit for managing grouping information of models;

[0008] A model attribute unit for managing the attributes of models, so that when configuring attribute information for a specific model, the stored attributes can be automatically provided for selection;

[0009] A model management unit for creating a specific model and managing the information of the created specific model;

[0010] A model relationship unit for creating a specific model relationship and managing the created specific model relationship;

[0011] A configuration item management unit for creating a model configuration item and managing the information of the created configuration item;

[0012] a configuration item relationship unit, configured to create configuration item relationship and manage the created configuration item relationship;

[0013] a configuration item topology graph unit, configured to display configuration items in a topology graph based on the storage information of the configuration item management unit and the configuration item relationship unit, wherein a node of the topology graph represents a configuration item, and information and direction of edges between nodes represent relationship between two corresponding configuration items.

[0014] In some embodiments, the management includes storage and editing, and the editing includes modification and deletion.

[0015] In some embodiments, the system further comprises a dictionary unit;

[0016] The dictionary unit is configured to manage all optional attribute values of an attribute item of a model attribute, so that when the model management unit configures attribute information for a specific model, all the optional attribute values corresponding to the attribute item are automatically displayed in the process of assigning values to the attribute item, and the code of the attribute item stored in the dictionary unit is consistent with the code of the corresponding attribute item of the corresponding attribute stored in the model attribute unit.

[0017] In some embodiments, the model management unit is further configured to configure attribute information for a specific model in the following manner:

[0018] display all attributes stored in the model attribute unit for user selection;

[0019] in response to each attribute selected by the user, display a configuration dialog box to obtain attribute information, and if the configuration dialog box contains a drop-down list, the drop-down list is displayed based on all optional attribute values of a corresponding attribute item stored in the dictionary unit, and the corresponding attribute item and all the optional attribute values stored in the dictionary unit are pre-configured or real-time configured.

[0020] In some embodiments, the grouping information of the models managed by the model grouping unit includes the name, code, serial number and grouping name of adjacent levels of the model grouping;

[0021] The attributes of the models managed by the model attribute unit include the name, code, type, whether to be filled in, whether to be editable, prompt information and serial number of the attribute;

[0022] The information of the specific model managed by the model management unit includes the grouping to which the specific model belongs, the name, code, serial number and attribute configuration information of the specific model;

[0023] The model relationship managed by the model relationship unit includes the source model name, target model name and specific model relationship name;

[0024] The configuration item management unit manages information of the configuration item, including a specific model to which the configuration item belongs, a group to which the specific model belongs, a name of the configuration item, coding and attribute configuration information of the configuration item.

[0025] The configuration item relationship unit manages a configuration item relationship, including a source configuration item name, a target configuration item name and a configuration item relationship name.

[0026] In some embodiments, the model grouping unit manages group information of the model according to a hierarchical relationship of the groups;

[0027] The model management unit manages information of the specific model according to a hierarchical relationship of the groups to which the specific model belongs.

[0028] The configuration item management unit manages information of the configuration item according to a hierarchical relationship of the specific model to which the configuration item belongs and the groups to which the specific model belongs.

[0029] In some embodiments, the model management unit is configured to create the specific model based on specific model creation information input by a user.

[0030] The specific model creation information includes a group name to which the specific model belongs, a name of the specific model, coding and a serial number, and the group name is obtained by the model management unit in the following manner: all group names are displayed based on the group information stored by the model grouping unit, and the group name to which the specific model to be created belongs is obtained according to a selection result of the user.

[0031] In some embodiments, if two configuration items belong to different specific models, a relationship between the two configuration items is consistent with a relationship between the two specific models to which the two configuration items belong.

[0032] In some embodiments, the configuration item topology graph unit is further configured to retrieve and display all paths from the source configuration item to the target configuration item according to the obtained source configuration item name and the target configuration item name.

[0033] In some embodiments, the configuration item topology graph unit is further configured to find the target configuration item according to the obtained configuration item relationship and the source configuration item name, or find the source configuration item according to the obtained configuration item relationship and the target configuration item name.

[0034] In some embodiments, the model grouping unit, the model attribute unit, the model management unit and the model relationship unit are arranged in a model module.

[0035] The configuration item management unit, the configuration item relationship unit and the configuration item topology graph unit are arranged in a configuration item module.

[0036] In some embodiments, the system further comprises a log unit configured to record logs generated by the operations.

[0037] In a second aspect, the embodiments of the present application provide a CMDB configuration management method based on a graph database, comprising the CMDB configuration management system as described above.

[0038] The beneficial effects of the above technical solutions provided by the embodiments of the present application at least include:

[0039] (1) The CMDB configuration management system based on a graph database provided by the embodiments of the present application has a flexible CMDB attribute configuration function: the non-relational graph database NoSQL mode is used to store data, which brings unprecedented flexibility and high efficiency for the attribute configuration of the CMDB. This design makes it very convenient to add a specific model, a configuration item or its attribute to the CMDB, without any impact on the existing data. In contrast, if a relational database is used to build a CMDB system, a tedious and high-cost table creation operation is required every time a model needs to be added, and the table structure needs to be modified when adding or deleting attributes, which undoubtedly increases the complexity and maintenance difficulty of the system.

[0040] (2) The CMDB configuration management system based on a graph database provided by the embodiments of the present application has a flexible CMDB configuration item relationship configuration function: the configuration items are displayed in the form of a topological graph, the nodes of the topological graph represent the configuration items, and the edges between the nodes represent the relationship between the corresponding two configuration items. With the number of edges between the nodes being unlimited and the directionality of the edges between the nodes, the relationship between the configuration items is established flexibly and conveniently. When using a relational database to maintain the relationship, complex foreign keys need to be maintained, and the addition and deletion of the relationship also requires modification of the table structure. When designing the relationship, 1:1, 1:many and many:many need to be considered. In addition, the relationship has no directionality.

[0041] (3) The CMDB configuration management system based on a graph database provided by the embodiments of the present application has strong correlation analysis capability: the nodes and edges are used as the basic units, and the correlation between the data is expressed by direct connection. This design makes the system have higher efficiency when processing the correlation relationship, and can quickly find the corresponding configuration item according to the correlation relationship. If a relational database is used to build a CMDB management system, the JOIN operation between tables is usually used to connect different data. This operation involves a large number of IO operations and memory consumption when a large amount of data or complex correlation is involved, and the performance decreases more obviously as the data size increases.

[0042] (4) The CMDB configuration management system based on the graph database provided by the embodiment has powerful path query capability: all possible paths from a certain node to another node can be easily queried. The traditional CMDB is mostly realized based on a relational database, and the data model is based on a table. For complex path query across multiple tables, a complex SQL statement needs to be written, and the performance is often poor. Especially in the case of recursive query or processing circular dependency, the performance will sharply decrease.

[0043] Additional features and advantages of the present application will be set forth in the description that follows, and in part will be apparent from the description, or can be learned by practice of the present application. The objectives and other advantages of the present application will be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.

[0044] The technical solutions of the present application are described in further detail below by means of the accompanying drawings and examples. BRIEF DESCRIPTION OF DRAWINGS

[0045] The accompanying drawings are included to provide a further understanding of the present application and are incorporated in and constitute a part of this specification, illustrate embodiments of the present application and serve to explain the present application and do not limit the present application. In the drawings:

[0046] Figure 1 Fig. 1 is a structural schematic diagram of the CMDB configuration management system based on the graph database in the embodiment of the present application;

[0047] Figure 2 Fig. 2 is a graph database model diagram in the embodiment of the present application;

[0048] Figure 3 Fig. 3 is a structural schematic diagram of another CMDB configuration management system in the embodiment of the present application. DETAILED DESCRIPTION

[0049] Exemplary embodiments of the present disclosure will be described more fully hereinafter with reference to the accompanying drawings. Although exemplary embodiments of the present disclosure are shown in the drawings, it is understood that the present disclosure can be implemented in various forms and should not be limited by the embodiments set forth herein. Rather, these embodiments are provided so that the present disclosure can be more thoroughly understood, and the scope of the present disclosure can be accurately conveyed to those skilled in the art.

[0050] It is to be understood that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the present application. Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. Although methods and materials similar or equivalent to those described herein can be used in the practice or testing of the present application, preferred methods and materials are described. All publications mentioned in this specification are herein incorporated by reference to disclose and describe the methods and / or materials in connection with which the publications are cited. The citation of any reference is not an admission that it is prior art with respect to the present application.

[0051] The embodiment of the present application provides a CMDB configuration management system and method based on a graph database, by virtue of the powerful advantages of the graph database, not only simplifies the adjustment of model and configuration item attribute changes and association relations, makes it more simple, intuitive and efficient, but also realizes a qualitative leap in association relation and path retrieval, thereby greatly improving the overall operation efficiency of the CMDB.

[0052] Embodiment one

[0053] The embodiment one of the present application provides a CMDB configuration management system based on a graph database, which has the structure as shown in the figure, comprising the following units: Figure 1

[0054] (1) Model grouping unit 11, used for managing grouping information of models.

[0055] The grouping information of models managed by the model grouping unit includes the name, code, serial number and adjacent level grouping name of the model grouping.

[0056] The serial number, i.e. the arrangement order of the model grouping, has no special meaning here, and is only a display order, which can be set according to requirements.

[0057] The model grouping unit manages the grouping information of models according to the hierarchical relationship of grouping, so for each grouping information, it can further contain the grouping of its adjacent level, which includes the adjacent upper level (parent level) and / or adjacent lower level (child level).

[0058] (2) Model attribute unit 12, used for managing the attributes of models, so that when configuring attribute information for a specific model, the stored attributes can be automatically provided for selection.

[0059] The attributes of models here are not the specific attributes of a specific model, but the attributes that all models may contain, i.e. the set of all possible attributes.

[0060] ​The model attribute unit manages the attributes of the model, including the name, code, type, whether to be filled in, whether to be editable, prompt information, and serial number of the attribute. The serial number is the arrangement order of the model attribute. The order here has no special meaning and is only a display order, which can be set according to the requirements.

[0061] The model management unit 13 is used for creating a specific model and managing the information of the created specific model, and is also used for attribute configuration and management of the specific model information.

[0062] The specific model information managed by the model management unit includes the group to which the specific model belongs, the name, code, serial number, and attribute configuration information of the specific model. The serial number can be understood as described above.

[0063] The model management unit creates a specific model based on the specific model creation information input by the user.

[0064] Further, the specific model creation information includes the group name to which the specific model belongs, the name, code, and serial number of the specific model. The model management unit obtains the group name in the following manner: based on the group information stored by the model group unit, all group names are displayed, and the group name to which the specific model to be created belongs is obtained according to the selection result of the user.

[0065] The display of the group name can be in the form of a drop-down list or in the form of a menu.

[0066] The model management unit manages the information of the specific model according to the hierarchical relationship of the group to which the specific model belongs.

[0067] The model relationship unit 14 is used for creating a specific model relationship and managing the created specific model relationship.

[0068] The model relationship managed by the model relationship unit includes the source model name, target model name, and specific model relationship name.

[0069] The configuration item management unit 15 is used for creating a model configuration item and managing the information of the created configuration item.

[0070] The configuration item information managed by the configuration item management unit includes the specific model to which the configuration item belongs, the group to which the specific model belongs, the name, code, and attribute configuration information of the configuration item.

[0071] A specific model contains at least one configuration item, i.e., a model instance. The configuration item management unit manages the configuration item information according to the hierarchical relationship of the specific model to which the configuration item belongs and the group to which the specific model belongs.

[0072] The configuration item relationship unit 16 is used for creating a configuration item relationship and managing the created configuration item relationship.

[0073] The configuration item relationship unit manages the configuration item relationship, including a source configuration item name, a target configuration item name and a configuration item relationship name.

[0074] If two configuration items belong to different specific models, the relationship between the two configuration items is consistent with the relationship between the two specific models to which the two configuration items belong.

[0075] (7) The configuration item topology graph unit 17 is configured to display the configuration items in the form of a topology graph based on the storage information of the configuration item management unit and the configuration item relationship unit. The nodes of the topology graph represent the configuration items, and the information and direction of the edges between the nodes represent the relationship between the corresponding two configuration items.

[0076] The above management includes storage and editing. Further, the editing includes modification and deletion.

[0077] Each unit of the CMDB configuration management system corresponds to a node in the graph database, and the information and direction of the edges of the node represent the relationship between the corresponding units.

[0078] Further, the graph database herein can be a Neo4j database.

[0079] The CMDB configuration management system based on the graph database provided by the embodiment one has a flexible CMDB attribute configuration function: the non-relational graph database NoSQL mode is used to store data, which brings unprecedented flexibility and high efficiency for the attribute configuration of the CMDB. This design makes the CMDB extremely convenient when adding a specific model, a configuration item or an attribute, and does not cause any impact on the existing data. In contrast, if a relational database is used to build the CMDB system, a tedious and high-cost table creation operation is required every time a model needs to be added, and the table structure needs to be modified when an attribute is added or deleted, which undoubtedly increases the complexity and maintenance difficulty of the system.

[0080] The CMDB configuration management system based on the graph database provided by the embodiment one has a flexible CMDB configuration item relationship configuration function: the configuration items are displayed in the form of a topology graph, the nodes of the topology graph represent the configuration items, and the edges between the nodes represent the relationship between the corresponding two configuration items. With the number of edges between the nodes being unlimited and the directionality of the edges between the nodes, the relationship between the configuration items is provided with flexible and convenient operations. When the relationship is maintained using a relational database, complex foreign keys need to be maintained, and the addition and deletion of the relationship also need to modify the table structure. When the relationship is designed, 1:1, 1:many and many:many need to be considered. In addition, the relationship has no directionality.

[0081] In some embodiments, the CMDB configuration management system further includes a dictionary unit 18.

[0082] The dictionary unit is used to manage all optional attribute values of the attribute item of the model attribute, so that the attribute item is automatically displayed with all the optional attribute values during the process of being assigned values when the model management unit configures the attribute information for the specific model.

[0083] The code of the attribute item stored in the dictionary unit is consistent with the code of the corresponding attribute item of the corresponding attribute stored in the model attribute unit.

[0084] The dictionary unit also stores objects according to a hierarchical relationship.

[0085] The model management unit is also used to configure attribute information for the specific model by the following way:

[0086] All attributes stored in the model attribute unit are displayed for the user to select. In response to each attribute selected by the user, a configuration dialog box is displayed to obtain attribute information. If the configuration dialog box contains a drop-down list, the drop-down list is displayed based on all the optional attribute values of the corresponding attribute item stored in the dictionary unit. The corresponding attribute item and all the optional attribute values stored in the dictionary unit are pre-configured or real-time configured.

[0087] Real-time configuration means that if the dictionary currently does not have corresponding storage content when the dictionary function is needed, the dictionary unit is used to define in real time to meet individual needs.

[0088] The model management unit configures the attribute information of the specific model by configuring each specific model attribute.

[0089] It can be understood that when configuring the attribute information of the specific model, each attribute value of the attribute displayed according to the storage content of the model attribute unit can be modified.

[0090] For example, whether to fill in can be modified from yes to no, whether to be editable can be modified from no to yes, the specific content of the prompt information can be modified, and the like.

[0091] Of course, only the attribute configuration information of the specific model is modified, and the storage content of the model attribute unit does not change.

[0092] In some embodiments, the configuration item topology graph unit is also used to retrieve and display all paths from the source configuration item to the target configuration item according to the obtained source configuration item name and target configuration item name.

[0093] The CMDB configuration management system based on the graph database provided by the embodiment one has powerful path query capability: all possible paths from a node to another node can be easily queried. The traditional CMDB is mostly implemented based on a relational database, and the data model is based on a table. For complex path query across multiple tables, a complex SQL statement needs to be written, and the performance is often poor; especially in the case of recursive query or processing of circular dependency, the performance will sharply decrease.

[0094] In some embodiments, the configuration item topology graph unit is further configured to find the target configuration item according to the obtained configuration item relationship and the source configuration item name; or find the source configuration item according to the obtained configuration item relationship and the target configuration item name.

[0095] The CMDB configuration management system based on the graph database provided by the embodiment one has powerful correlation analysis capability: the node and the edge are taken as the basic unit, and the correlation between the data is expressed by direct connection. This design makes the system have higher efficiency in processing the correlation relationship, and the corresponding configuration item can be quickly found according to the correlation relationship. If a relational database is used to construct the CMDB management system, the JOIN operation between tables is usually used to connect different data. This operation involves a large number of IO operations and memory consumption when a large amount of data or complex correlation is involved, and the performance decreases more obviously as the data size increases.

[0096] In some embodiments, the CMDB configuration management system further includes a log unit 19 for recording logs generated by operations. The logs include the following attributes: operator, specific model number, configuration item number, operation type, operation description, operation details, and operation time. The operation details include the data before and after the change.

[0097] The dictionary unit and the log unit also correspond to a node in the graph database. Referring to FIG. 1, which is a diagram of a graph database model. Figure 2

[0098] Further, referring to FIG. 2, the CMDB configuration management system can include a model module 1, a configuration item module 2, a dictionary module 3, and a log module 4. Figure 3

[0099] The model module 1 is provided with the model grouping unit 11, the model attribute unit 12, the model management unit 13, and the model relationship unit 14; the configuration item module 2 is provided with the configuration item management unit 15, the configuration item relationship unit 16, and the configuration item topology graph unit 17; the dictionary module 3 is provided with the dictionary unit 18; and the log module 4 is provided with the log unit 19.

[0100] Embodiment two ​​

[0101] Embodiment two of the present application provides a CMDB configuration management method based on a graph database, comprising: performing CMDB configuration management based on the CMDB configuration management system. Specifically,

[0102] (1) When a specific model is added, the following steps are needed:

[0103] Create a specific model, and set the name, code, serial number and group of the model.

[0104] Analyze which attributes the specific model contains, and create these attributes in the attribute node thereof.

[0105] During the creation, if an attribute is selected through a drop-down list, a dictionary needs to be created in the dictionary node first. After the dictionary is created, the unique identifier of the dictionary is configured to the attribute, and the attribute is set to the drop-down list type.

[0106] Select an attribute from the attribute node to configure the attribute for the specific model.

[0107] Store the added specific model object json data in the model log node, and record the operator, operation time and operation type.

[0108] (2) When a specific model attribute is modified, the following steps are needed:

[0109] Query all attributes of the specific model whose attribute is to be changed.

[0110] Modify the relevant information of the attribute to be changed.

[0111] Save to the specific model attribute node after the modification is completed.

[0112] Store the specific model json before and after the attribute change in the model log node, and record the operator, operation time and operation type.

[0113] (3) When a specific model attribute is deleted, the following steps are needed:

[0114] Query the specific model whose attribute is to be deleted.

[0115] Query all attributes of the specific model.

[0116] Delete the attribute of the model from the specific model attribute node.

[0117] Store the model definition json before and after the attribute deletion in the model log node, and record the operator, operation time and operation type.

[0118] (4) When a specific model is deleted, the following steps are needed:

[0119] Query the specific model to be deleted.

[0120] Determine whether the specific model has configuration items.

[0121] If there are configuration items, they need to be emptied first, then deleted.

[0122] Store the json data before and after the model deletion in the model log node, and record the operator, operation time, and operation type.

[0123] (5) When saving configuration items, the following steps are needed:

[0124] Query the corresponding specific model.

[0125] Query all attributes of the specific model.

[0126] Set the specific values of the specific model attributes, and after setting, assemble them into json format data.

[0127] Save the assembled json data to the configuration item node.

[0128] Save the assembled json data to the model log node, and record the operator, operation time, and operation type.

[0129] (6) When changing configuration items, the following steps are needed:

[0130] Query the configuration item to be changed.

[0131] Modify the attribute value that needs to be changed.

[0132] Store the changed configuration item json in the configuration item node.

[0133] Store the json data before and after the change in the model log node, and record the operator, operation time, and operation type.

[0134] (7) When deleting configuration items, the following steps are needed:

[0135] Query the configuration item to be deleted.

[0136] Determine whether the configuration item has relationships.

[0137] If the relationship exists, delete the relationship first, then delete the configuration item.

[0138] Store the json data before and after the deletion in the model log node, and record the operator, operation time, and operation type.

[0139] (8) When saving configuration item relationships, the following steps are needed:

[0140] Determine the relationship name.

[0141] Determine the source configuration item code and the target configuration item code.

[0142] Determine whether the relationship exists between the two configuration items. If not, proceed as follows:

[0143] Determine whether the relationship exists in the model relationship node. If not, create the relationship in the model relationship node.

[0144] Create a relationship with the source configuration item code, target configuration item code, and relationship name as parameters.

[0145] Store the relationship object json data in the model log node, along with the operator, operation time, and operation type.

[0146] (9) When performing configuration item path retrieval, the following steps are required:

[0147] Determine the source configuration item by name or code.

[0148] Enter the target configuration item name or code.

[0149] The system will call the graph database API to automatically retrieve the possible paths of the source and target. If a relationship name is specified, only paths with the relationship name will be retrieved.

[0150] Parse the path list and convert it to a displayable data format.

[0151] Display the path based on the nodes and relationships contained in the path.

[0152] (10) When performing configuration item level-by-level expansion traversal, the following steps are required:

[0153] Determine the source configuration item by name or code.

[0154] Retrieve all relationship names established by the source configuration item.

[0155] Find all configuration items associated with the source configuration item based on a certain configuration item relationship.

[0156] Repeat the above operations to complete the configuration item traversal level by level.

[0157] Unless specifically stated otherwise, terms such as processing, computing, calculating, determining, displaying, and the like, can refer to an action or process of one or more processing or computing systems, or similar devices, that manipulate or transform data represented as physical (e.g., electronic) quantities within the systems' registers or memories into other data similarly represented as physical quantities within the systems' memories, registers or other such information storage, transmission or display devices. The terms "information," "data," "instructions," “command,” “signal,” “bit,” “symbol,” and the like refer to physical quantities presumed to represent a pertinent physical reality.

[0158] It should be understood that the particular order in which the steps in the disclosed processes have been presented is exemplary. Based on design preferences, it is understood that the particular order of steps in the processes can be rearranged without departing from the scope of the disclosure. The accompanying method claims present elements of the various steps in exemplary order and are not meant to be limited to the specific order or hierarchy presented.

[0159] In the above detailed description, various features are grouped together in single embodiments for the purpose of streamlining the disclosure. This disclosed approach is not to be interpreted as reflecting an intention that the embodiments of the claimed subject matter require more features than are expressly recited in each claim. Rather, as the claims below reflect, inventive subject matter lies in fewer than all features of the disclosed single embodiments. Thus, the claims following the detailed description are hereby expressly incorporated into this detailed description, with each claim standing on its own as a separate preferred embodiment.

[0160] Those skilled in the art will further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein can be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans can implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.

[0161] The steps of a method or algorithm described in connection with the embodiments disclosed herein can be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module can reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium can be integral to the processor. The processor and the storage medium can reside in an ASIC. The ASIC can reside in a user terminal. In the alternative, the processor and the storage medium can reside as discrete components in a user terminal.

[0162] For a software implementation, the techniques described herein can be implemented with modules (e.g., procedures, functions, and so on) that perform the functions described herein. The software codes can be stored in memory units and executed by processors. The memory unit can be implemented within the processor or external to the processor, in which case it can be communicatively coupled to the processor via various means as is known in the art.

[0163] The above description includes one or more examples of the embodiments. Of course, not all possible combinations of components or methods described above can be claimed as embodiments. One of ordinary skill in the art can recognize that modifications and variations of the described embodiments can be made without departing from the scope of the present disclosure. It is therefore intended that the embodiments described herein be considered in all respects as illustrative and not restrictive, particularly as numerous modifications and further embodiments can become apparent to those skilled in the art. Accordingly, the scope of the present disclosure is intended to be defined by the following claims rather than the description. Moreover, the use of the terms "first", "second", etc. do not denote any order or importance, but rather the terms are used to distinguish one element from another. Furthermore, the use of the terms "including", "containing", etc. are meant to encompass the terms "consisting of" and / or "consisting essentially of". Moreover, the use of the term "or" is meant to encompass "and / or", unless otherwise indicated.

Claims

1. A configuration management system based on a graph database CMDB, characterized in that, Each unit corresponds to a node in the graph database, and the information and direction of the edges of the node represent the relationship between the corresponding units. A model grouping unit is configured to manage grouping information of models. A model attribute unit is configured to manage attributes of models, so that stored attributes can be automatically provided for selection when configuring attribute information for a specific model. A model management unit is configured to create a specific model and manage information of the created specific model. A model relationship unit is configured to create a specific model relationship and manage the created specific model relationship. A configuration item management unit is configured to create a configuration item and manage information of the created configuration item. A configuration item relationship unit is configured to create a configuration item relationship and manage the created configuration item relationship. A configuration item topology unit is configured to display configuration items in the form of a topology graph based on the stored information of the configuration item management unit and the configuration item relationship unit, wherein the nodes of the topology graph represent configuration items, and the information and direction of the edges between the nodes represent the relationship between the two corresponding configuration items.

2. The system of claim 1, wherein, The management includes storage and editing, and the editing includes modification and deletion.

3. The system of claim 1, wherein, The system further includes a dictionary unit. The dictionary unit is configured to manage all selectable attribute values of an attribute item of a model attribute, so that all selectable attribute values are automatically displayed during the process of assigning values to the attribute item when the model management unit configures attribute information for a specific model, and the code of the attribute item stored in the dictionary unit is consistent with the code of the corresponding attribute item of the corresponding attribute stored in the model attribute unit.

4. The system of claim 3, wherein, The model management unit is further configured to configure attribute information for a specific model by the following method: Display all attributes stored in the model attribute unit for user selection; In response to each attribute selected by the user, display a configuration dialog box to obtain attribute information, and if the configuration dialog box includes a drop-down list, the drop-down list is displayed based on all selectable attribute values of the corresponding attribute item stored in the dictionary unit, and the corresponding attribute item and all selectable attribute values stored in the dictionary unit are pre-configured or real-time configured.

5. The system of claim 1, wherein, The grouping information of the models managed by the model grouping unit includes the name, code, serial number, and grouping name of the adjacent level of the model grouping. The attributes of the models managed by the model attribute unit include the name, code, type, whether it is required, whether it is editable, prompt information, and serial number of the attribute. The information of the specific models managed by the model management unit includes the grouping to which the specific model belongs, the name, code, serial number, and attribute configuration information of the specific model. The model relationship managed by the model relationship unit includes the source model name, target model name, and specific model relationship name. The information of the configuration items managed by the configuration item management unit includes the specific model to which the configuration item belongs, the grouping to which the specific model belongs, the name, code, and attribute configuration information of the configuration item. The configuration item relationship managed by the configuration item relationship unit includes the source configuration item name, target configuration item name, and configuration item relationship name.

6. The system of claim 5, wherein, The model grouping unit manages the grouping information of the models according to the hierarchical relationship of the groupings. The model management unit manages the information of the specific models according to the hierarchical relationship of the groupings to which the specific models belong. The configuration item management unit manages information of the configuration items according to a hierarchical relationship of a specific model to which the configuration items belong and a group to which the specific model belongs.

7. The system of claim 5, wherein, The model management unit is configured to create the specific model based on specific model creation information input by a user. The specific model creation information includes a group name to which the specific model belongs, a name, a code and a serial number of the specific model, and the group name is obtained by the model management unit in the following manner: all group names are displayed based on the group information stored by the model grouping unit, and the group name to which the specific model to be created belongs is obtained according to a selection result of the user.

8. The system of claim 5, wherein, If two configuration items belong to different specific models, a relationship between the two configuration items is consistent with a relationship between the two specific models to which the two configuration items belong.

9. The system of claim 5, wherein, The configuration item topology graph unit is further configured to retrieve and display all paths from a source configuration item to a target configuration item according to the obtained source configuration item name and target configuration item name.

10. The system of claim 5, wherein, The configuration item topology graph unit is further configured to find the target configuration item according to the obtained configuration item relationship and the source configuration item name, or find the source configuration item according to the obtained configuration item relationship and the target configuration item name.

11. The system of any one of claims 1 to 10, wherein, The model grouping unit, the model attribute unit, the model management unit and the model relationship unit are arranged in a model module. The configuration item management unit, the configuration item relationship unit and the configuration item topology graph unit are arranged in a configuration item module.

12. The system of any one of claims 1 to 10, wherein, The system further includes a log unit configured to record logs generated by operations.

13. A method for CMDB configuration management based on a graph database, characterized in that, The system further includes a CMDB configuration management system based on any one of claims 1-12, and the CMDB configuration management system is configured to perform CMDB configuration management.

Citation Information

Patent Citations

  • CMDB system based on graphic data base and implementation method

    CN104123369A

  • Multi-valued primary key for multiple unique identifiers of entities

    CN115516441A

  • Construction method of configuration management database based on graph structure model

    CN117332101A

  • Anomaly Detection Using Graph Neural Networks

    US20230025826A1