- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-04-2025 10:51 PM
I have read several post regarding this topic, but it is still unclear to me how the svc_ci_assoc table is populated (as it relates to ServiceNow EA TPM application).
I have seen several posts related to application services used with the TPM where mapped is in quotations.
" server(s) must be "mapped" and show in the svc_ci_assoc table."
We are creating application services using the Dynamic CI method which populates the cmdb_ci_service_calculated table. When we create the application service, a Consumes::Consumed by relationship between the business application and application services is automatically created in the cmdb_rel_ci table and an application services (configuration item id) to application services (Service ID) record is automatically created in the svc_ci_assoc. I ran the required scheduled jobs to populate the TPM but the application service to CI (server) association does not display in the svc_ci_assoc table or the cmdb_rel_ci table . It wasn't until I manually created a record (application service to CI (server)) in the svc_ci_assoc table that the CMDB relationships displayed.
My questions are:
- why is "mapped" in quotations?
- Is the "mapping" to the svc_ci_assoc table suppose to be a manual process? Meaning do we manually create the record in the svc_ci_assoc table, associating the application service to the CI (server)?
- Do we create a CI to application services relationship in the cmdb_rel_ci table first then it automatically creates a record in the svc_ci_assoc table?
- If the CI (server) to application service associations or relationships is not created/populated in the cmdb_rel_ci and/or svc_ci_assoc table(s) after creating the business application to application services relationship and running the necessary scheduled jobs , how do we populate the svc_ci_assoc table?
I hope these questions don't seem redundant. I am trying to get a better understanding of how the svc_ci_assoc table is populated. Is it manual or automated? If automated, how?
Thanks in advance.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
a month ago - last edited a month ago
Hi @Princess W_
- "Mapped" may be in quotations because there are several different methods to populating an App Service (see below)
- Mapping to the Service Configuration Item Association [svc_ci_assoc] table (I will abbreviate this as SCIA) is always automated. Do not attempt to manually populate the table - your entries will be deleted each time the App Service and its relations are updated.
- For Calculated and Mapped Application Services, yes - create a CI Rel between the App Service and one or more CIs. See below for more details on how the SCIA table is populated.
The SCIA table creates records that associate Application Services with connected CIs. Population of this table depends upon the type of Application Service:
- Top Down Discovery - requires Service Mapping. Population of the SCIA is based on relationships established when Service Map discovery is run and is automatic.
- Calculated Application Service (also known as a Dynamic Service) - set the number of levels in the CMDB hierarchy when creating the Application Service and when the App Service is connected to other CIs via a CI Relationship, the SCIA table is populated automatically
- Mapped Application Service (also known as a Manual Service) - as above, except that updates to the SCIA are not automatic - you must click the "Update with changes from CMDB" related link in the Mapped Application Service record. This method is not recommended as updates must be manually-synced.
- Tag-Based Application Service - requires Service Mapping. Population is based on tags (key-value pairs) for the desired CIs. SCIA table is populated automatically.
- Dynamic CI Group - you must create a CMDB Group with one or more related queries or manually-added CIs, then reference the CMDB Group in the Dynamic CI Group record. Population of the SCIA is then automatic.
There is also the Automated Business Service class [cmdb_ci_service_auto] - this is the parent class for all Application Services above. You used to be able to create Application Services in this class, but if you have done, there is no automation to populate the SCIA table. You must instead use one of the types above. The simplest option in this case is to create a new Application Service using the App Service wizard - which is within the CSDM menu and is under CSDM > Manage Technical Services > Application Service > New - <your service now instance URL>/now/nav/ui/classic/params/target/%24csdm_app_service.do
It's also worth pointing out that from Yokohama on, CSDM 5 applies. The above is all based on CSDM 4. The (relevant) differences are:
- Technical Services are now Technology Management Services
- Application Services are now Service Instances
- The recommended CI Relationship from a Business Application to a Service instance has changed. It was Consumes::Consumed by - it is now Uses::Used by.
- The menu above is instead CSDM > Manage Technology Management Services > Service Instance > New (although it still says Application Service throughout the wizard ;))
Links:
App Services and how to use them
I hope this helps!
Mat
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
a month ago - last edited a month ago
Hi @Princess W_
- "Mapped" may be in quotations because there are several different methods to populating an App Service (see below)
- Mapping to the Service Configuration Item Association [svc_ci_assoc] table (I will abbreviate this as SCIA) is always automated. Do not attempt to manually populate the table - your entries will be deleted each time the App Service and its relations are updated.
- For Calculated and Mapped Application Services, yes - create a CI Rel between the App Service and one or more CIs. See below for more details on how the SCIA table is populated.
The SCIA table creates records that associate Application Services with connected CIs. Population of this table depends upon the type of Application Service:
- Top Down Discovery - requires Service Mapping. Population of the SCIA is based on relationships established when Service Map discovery is run and is automatic.
- Calculated Application Service (also known as a Dynamic Service) - set the number of levels in the CMDB hierarchy when creating the Application Service and when the App Service is connected to other CIs via a CI Relationship, the SCIA table is populated automatically
- Mapped Application Service (also known as a Manual Service) - as above, except that updates to the SCIA are not automatic - you must click the "Update with changes from CMDB" related link in the Mapped Application Service record. This method is not recommended as updates must be manually-synced.
- Tag-Based Application Service - requires Service Mapping. Population is based on tags (key-value pairs) for the desired CIs. SCIA table is populated automatically.
- Dynamic CI Group - you must create a CMDB Group with one or more related queries or manually-added CIs, then reference the CMDB Group in the Dynamic CI Group record. Population of the SCIA is then automatic.
There is also the Automated Business Service class [cmdb_ci_service_auto] - this is the parent class for all Application Services above. You used to be able to create Application Services in this class, but if you have done, there is no automation to populate the SCIA table. You must instead use one of the types above. The simplest option in this case is to create a new Application Service using the App Service wizard - which is within the CSDM menu and is under CSDM > Manage Technical Services > Application Service > New - <your service now instance URL>/now/nav/ui/classic/params/target/%24csdm_app_service.do
It's also worth pointing out that from Yokohama on, CSDM 5 applies. The above is all based on CSDM 4. The (relevant) differences are:
- Technical Services are now Technology Management Services
- Application Services are now Service Instances
- The recommended CI Relationship from a Business Application to a Service instance has changed. It was Consumes::Consumed by - it is now Uses::Used by.
- The menu above is instead CSDM > Manage Technology Management Services > Service Instance > New (although it still says Application Service throughout the wizard ;))
Links:
App Services and how to use them
I hope this helps!
Mat
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
a month ago
Hello @Mathew Hillyard ,
Thank you so much for your response! I was very very helpful. I understand now that the CI Relationships are created manually but once they are created, a record is automatically created in the SCIA table (we should not be manually populating the SCIA table).
You mention one of the relevant differences between the CSDM 4 and CSDM 5 is "The recommended CI Relationship from a Business Application to a Service instance has changed. It was Consumes::Consumed by - it is now Uses::Used by."
We are on Yokohama. When a CI Relationship from Business Application to Service Instance is created using the Service Instance Wizard, it automatically creates the Consumes::Consumed by relationship not the Uses::Used by relationship. Should we manually change the relationship type to Uses::Used by?
Do you know if ServiceNow has implemented all the components of CSDM 5?
Thank you again for taking the time to respond to my post!! It is greatly appreciated.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
4 weeks ago
Hi @Princess W_ ,
As you might have guessed already, although CSDM 5 has been released, the platform has not yet been updated fully to match the new guidance - one of the elements that has not been updated is the default CI Relationship between Business Application and Service Instance (if you are not using the build domain). So for now I would advise continuing to use the Consumes::Consumed by CI Relationship Type as parts of the platform (e.g. Service Instance Wizard, Impacted Business Applications population in Incident and Change, and automation for application scoring in Enterprise Architecture) still expect this even on Yokohama.
I hope this helps!
Mat