- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-08-2026 10:36 PM
Hi @Aman_07 ,
When transforming data from a staging table into the CMDB, there are two common approaches that can be used: using a Transform Map or using ETL (Extract, Transform, and Load).
ETL (Extract, Transform, and Load):
In an ETL-based approach, data is loaded from the staging table directly into the target CMDB class. Identification is handled using the Identification Rules defined for that class.
For example, if data is being inserted into the cmdb_ci_computer table, the Computer class inherits out-of-the-box Identification Rules from its parent class, cmdb_ci_hardware. These rules define the identifiers such as serial number, name, etc., which are used to uniquely identify a CI.
If 10 records are received in the staging table and each record has a unique serial number, the identification rules will treat each record as a unique CI. As a result, 10 new records will be created in the cmdb_ci_computer table.
In this approach, identification happens implicitly based on the class-level identification rules. There is no explicit call made to the Identification and Reconciliation Engine (IRE). Deduplication and updates rely purely on the configured identification rules.
Transform Map approach using IRE:
When using a Transform Map, the CMDB best practice is to explicitly invoke the Identification and Reconciliation Engine (IRE) during the transform process.
This is done by calling the IRE API using IdentificationAndReconciliationScriptableApi.createOrUpdateCI(payload, discovery_source).
Here, the payload contains the CI attributes and identifier values, and the discovery source specifies the origin of the data. IRE evaluates the incoming data against the configured Identification Rules and based on the evaluation, it either creates a new CI or updates an existing one.
If the same 10 records with unique serial numbers are processed through the Transform Map, IRE will identify each record as a distinct CI and again 10 records will be created in the cmdb_ci_computer table.
The key difference is that with Transform Maps, identification and reconciliation are explicitly enforced, and reconciliation rules and data source precedence are fully respected. This is the recommended and supported approach for inserting or updating CMDB data in ServiceNow, as it provides better governance and long-term CMDB data quality.
if you want to know more about ire then go through this docs
Hope this helps you, Please do mark it as helpful . And accept the solution.
Thanks,
Vishnu