Marlos
ServiceNow Employee

Hi Lyle,



ServiceNow contains:



- Database servers


- Database instances


- Database catalogs



Database server is a logical entity, not physical, it may have a relationship (or runs on) to a physical(or virtual) server and maybe a relationship like (or used by) to a logical application or business service.



Database instance is related to Database as an instance of as you would have different instances of the DB (PROD, DEV, UAT, etc) and it would also have a RUNS ON relationship to a physical or virtual server. A database on a server can have multiple instances, slivers of that database.



Discovery does gather Database Instance information and in some cases, Database Catalog information. Database Catalog would sit underneath the database instance. It is the metadata of the instance.


Thanks for the reply Marlos. ServiceNow was never able to explain the real purpose of the Database Server CI, so we have left that alone. The Database Instance CIs actually represent running processes on a server. When an MS SQL or Oracle process is discovered, it creates MS SQL Instance or Oracle Instance CIs accordingly.



That is all well and good, and we have no difficulties or issues there. However, in the case of SQL Server, the databases being served up by an instance appear to have two classes that could contain them, and it appears that discovery has changed which class is being populated. The original class was the one that extends the database catalog base class. However, the one being populated now extends the database instance class which extends the Application class, which does not make sense to me, since the Application class appears to be there to represent running processes, and an MS SQL Database is not a running process but rather data (or metadata) being managed and served up by the related instance.



So, the question is why the new class? What's the difference between them?


lyletaylor
Giga Contributor

OK, I had a call with ServiceNow. It looks like it is transitioning from the old catalog table to the new table partly due to a snafu with development. The old probe and sensor discovery model in use before Jakarta uses the old catalog table. The newer pattern based discovery model used in Jakarta will use the new table instead.


View solution in original post

Thanks for this.   I finally looked at the table name because it didn't jive with the entry in the navigation pane and see there is a different table referenced now.


Shubham Bagdiya
Tera Contributor

Is there a way to group by "cmdb_ci_db_mssql_database" based on database instance table or the server on which it is hosted?