Configuration Management Database

The Configuration Management Database (CMDB) is a series of tables that contain all the assets and business services controlled by a company and its configurations.

This information includes computers and devices on the network, software contracts and licenses, business services, and more. The IT desk can use the CMDB to better understand their network users' equipment, and the relationships between them. The CMDB can also be referenced by other processes within the system.

The CMDB can be populated using the Discovery product. Discovery searches the network for all attached computers and devices, then populates the CMDB with information on each computer/device's configuration, provisioning, and current status. Discovery also reports on any software which is running, and the TCP connections between computer systems, thereby establishing their relationships.

Applications such as Asset Management, Software Asset Management, Contract Management, and Configuration Management contain modules which display different tables within the CMDB. Each application is designed with a specific purpose in mind.

Asset Management and Software Asset Management link to CMDB all assets, hardware, software, assets in stock, as well as records for manufacturers and vendors. The Contract Management application contains information about contracts, including leases, service contracts, purchase orders, warranties, and software licenses. The Configuration Management application has a focus on operation.

For more background information about the CMDB, see the ServiceNow® Community post at CMDB 101 - What is a configuration management database and why do you need one?.

CMDB tables

Key tables in the configuration management database (CMDB):

  • The Base Configuration Item [cmdb] table, which is the core CMDB table for non IT CIs (descending classes are non IT CIs).
  • The core Configuration Item [cmdb_ci] table, which stores the basic attributes of all the CIs. The admin, itil, or asset user role is required to access this table (descending classes are IT CIs).
  • The CI Relationship [cmdb_rel_ci] table, which defines all relationships between CIs.

The Configuration Item table is extended to other tables, such as Database [cmdb_ci_database] and Computer [cmdb_ci_computer]. The Computer table is extended to the Server [cmdb_ci_server] table, which is extended to the UNIX Server [cmdb_ci_unix_server] table, and so on.

Note: The Base Configuration Item [cmdb] table uses the table per partition extension model, which has different inheritance and replication behaviors than other extended tables. See Table extension and classes .
You can use the schema map to view more details of tables and their relationships:
  1. Navigate to System Definition > Tables & Columns.
  2. Select a table and click Schema Map.
Figure 1. Schema Map
Note: CIs not extended from the Configuration Item [cmdb_ci] table, are not displayed in Dependency Views maps and in CI relation formatters.

CI attributes

Attributes apply to all the CIs in a classification. To change attributes for a CI, you must extend the table and create a new classification for that CI.

The position of a CI in a classification hierarchy is determined by the attributes it shares with the CIs below it. Each time a CI has a single different attribute from its parent, the classification hierarchy branches.

For example, servers have different attributes from computers, which include workstations and laptops. Linux servers and UNIX servers have different attributes from the parent server classification and from each other, so they occupy separate branches in the hierarchy.