MicroStrategy ONE

Result Caches

A result cache is a cache of an executed report or document that is stored on Intelligence Server. Result caches are either report caches or document caches.

You cannot create or use result caches in a direct (two-tier) environment. Caches are stored in Intelligence Server, not retained on Developer.

Report caches can be created or used for a project only if the Enable report server caching check box is selected in the Project Configuration Editor under the Caching: Result Caches: Creation category.

Document caches can be created or used for a project only if the Enable Document Output Caching in Selected Formats check box is selected in the Project Configuration Editor under the Caching: Result Caches: Creation category, and one or more formats are selected.

Document caches are created or used only when a document is executed in MicroStrategy Web. Document caches are not created or used when a document is executed from Developer.

By default, result caching is enabled at the project level. It can also be set per report and per document. For example, you can disable caching at the project level, and enable caching only for specific, frequently used reports. For more information, see Configuring Result Cache Settings.

A result cache is created when you do any of the following:

  • In MicroStrategy Web or Developer, execute a saved report or document containing only static objects.
  • In MicroStrategy Web or Developer, execute a saved report or document containing one or more prompts. Each unique set of prompt selections corresponds to a distinct cache.
  • In MicroStrategy Web, execute a template and filter combination.
  • Execute a report or document based on a schedule. The schedule may be associated with MicroStrategy Web, Developer, Mobile, Distribution Services, or Narrowcast Server. For more information about scheduling reports, see Scheduling Reports and Documents: Subscriptions.

Caching does not apply to a drill report request because the report is constructed on the fly.

When a user runs a report (or, from MicroStrategy Web, a document), a job is submitted to Intelligence Server for processing. If a cache for that request is not found on the server, a query is submitted to the data warehouse for processing, and then the results of the report are cached. The next time someone runs the report or document, the results are returned immediately without having to wait for the database to process the query.

The Cache Monitor displays detailed information about caches on a machine; for more information see Monitoring Result Caches.

You can easily check whether an individual report hit a cache by viewing the report in SQL View. The image below shows the SQL View of a MicroStrategy Tutorial report, Sales by Region. The fifth line of the SQL View of this report shows "Cache Used: Yes."

Client-side analytical processing, such as ad hoc data sorting, pivoting, view filters, derived metrics, and so on, does not cause Intelligence Server to create a new cache.

This section discusses the following topics concerning result caching: