Skip to main content

Cache services

The cache services Snow Software MongoDB Service and Snow Software SLM Cache Server Service are used for reducing the loading times and improve the performance of the reports in Snow License Manager.

Description

Some reports can take a long time to run due to large databases. Use the cache reports service to run the reports from a cache instead of from the live database. This will enable you to run reports faster.

When caching of reports is enabled, you have two options:

  • Show reports with the most recent data from the live database. These reports might take a long time to run.

  • Show cached reports. These reports will run faster but will have older data.

To enable caching in Snow License Manager, see Reports cache and Show report.

The cache server stores aggregated report results in MongoDB service. Cache Server Service manages all the requests related to this data.

Prerequisites

  • Snow License Manager 9.13 or later versions.

  • If the application server for Snow License Manager is using Windows Server 2012 (all editions), all Windows updates must be installed.

Known limitations

The cache report service has the following known limitations:

  • Grouping is disabled for cached reports due to asp.net devexpress limitation.

  • Files per computer report can not be cached.

    By default, the report fetches results for five computers as initial load and users need to enter criterion for what they are looking for. The cache server has access only to cached data, that is for the five computers, not the whole database. It does not make sense to fill the report for five random computers when there are thousands of other computers.

  • Clean Inventory Data Contract (CIDC) report can not be cached because it is an excel export only.

  • Some criteria in some reports require access to columns in tables different from those used in the report output. When these type of criteria are added, the Show cached report button will be disabled in the Reports view, because the criteria are not supported for caching. These reports have at least one unsupported criteria by default:

    • Computers without antivirus software installed

    • Invalid license assignments

    • Unassigned licenses

    • All Oracle databases for which Oracle has ended Extended Support

    • All Oracle databases for which Oracle has ended Premier Support

    • Applications nearing End of Extended Support

    • Applications nearing End of Life

    • Applications nearing End of Support

  • Some enumeration columns are stored with their key value rather than text, for example, metric. In cached data, these types of columns are not sorted alphabetically, but according to their key values.

    note

    Values for metric will be sorted as:

    1. None

    2. Installation

    3. Custom Compare Value

    4. ...

  • Cached reports can not be exported. Use scheduled reports to export data from the live database.

  • Custom reports can not be cached.

Characteristics

The database tables Report caching options, Report caching dependencies, Report caching data state, and Report query dependencies keep information related to report caching.

Report caching options table

The table dbo.tblReportCachingOptions keeps the information about which reports are opt-in caching for which user.

Column nameData typeDescription
IdPK, int, not nullRow identity column
ReportIDuniqueidentifier, nullStockreport Id
CIDint, nullCustomer Id
TenantIDuniqueidentifier, nullTenant Id for SnaaS
UserIDint, nullSystem User Id
Enabledbit, nullIs caching enabled
ChangedDatedatetime, nullUpdate date
ChangedBynvarchar(200), nullUpdate user

Report caching dependencies table

The table dbo.tblReportCachingDependencies keeps the information about if any other ongoing operations are blocking to start the caching or not.

Column nameData typeDescription
IdPK, int, not nullRow identity column
IsCachingRunningbit, nullCaching operation going on
IsInvalidationRunningbit, nullInvalidation operation going on
UpdatedDatedatetime, nullUpdate date

Report caching data state table

The table dbo.tblReportCachingDataState keeps the information about caching date and state hash to identify data changes and the delta in reports.

Column nameData typeDescription
IdPK, int, not nullRow identity column
ReportIDuniqueidentifier, not nullStockreport Id
CIDint, not nullCustomer Id
UserIDint, not nullSystem User Id
SqlQuerynvarchar(max), not nullReport stored procedure
StateHashint, nullCalculated hash by checking report tables and content
IsCachingCompletedbit, not nullFlag showing if caching has been completed during caching cycle (eg. weekly)
CachedDatedatetime, nullCaching date

Report query dependencies table

The table dbo.tblReportQueryDependencies keeps a mapping table for report sp and content tables.

Column nameData typeDescription
SqlQuerynvarchar(max)Report stored procedure
DependencyNamenvarchar(256)Table name