OBIEE 10G/11G - Presentation Service (Query|Result|Cursor) Cache

1 - About

When users access objects that run queries (Answers, Prompts, …), Presentation Services caches the results of the queries. This kind of cache is a client result cache.

Presentation Services determines if subsequent analytics can use cached results by asking a shared request key with the help of the odbc function sagetsharedrequestkey. If the cache can be shared, then subsequent analyses are not stored.

The files for the Presentation Services cache:

  • have names such as nQS_xxxx_x_xxxxxx.TMP.
  • are created by the ODBC driver but generally do correspond to ODBC requests that the Presentation Services cache keeps open.
  • are stored in the following directory:
    • for 11g: ORACLE_INSTANCE\tmp\OracleBIPresentationServices\coreapplication_obipsn\obis_temp

3 - How to

3.1 - Clear the Cache

  • Using Administration > Manage Sessions

  • Shutting down cleanly Presentation Services remove the files for the cache
  • Deleting the files when Presentation Services is not running and that it shuts down unexpectedly (then various cache files might be left on disk)

3.2 - Configure it

To configure the presentation service cache, you can add the following entries in the instanceconfig.xml file such as:

<ServerInstance>
  <Cache>
    <Query>
      <MaxEntries>100</MaxEntries>
      <MaxExpireMinutes>60</MaxExpireMinutes>
      <MinExpireMinutes>10</MinExpireMinutes>
      <MinUserExpireMinutes>10</MinUserExpireMinutes>
    </Query>
  </Cache>
<ServerInstance>

3.2.1 - CacheMaxEntries

Specifying the Maximum Number of Open Record Sets

You can override the maximum number of open record sets that Presentation Service keeps open at any one time. The internal default is 10. The minimum value is 3. For systems under significant loads, you can increase this value to 500 or 1000.

The following entry is an example:

<CacheMaxEntries>100</CacheMaxEntries>

3.2.2 - CacheMaxExpireMinutes

You can override the maximum amount of time, in minutes, that an entry in the cache can exist before it is removed. The internal default is 60 (one hour).

Depending on (the number of requests being run, an entry may be removed before the time limit expires.

The setting for CacheMinUserExpireMinutes , described in Specifying the Maximum Amount of Time an Entry Can Exist in the Presentation Service Web Cache, can force an entry for a particular user to exist for a longer time than that specified by CacheMaxExpireMinutes .

The following entry is an example:

<CacheMaxExpireMinutes>60</CacheMaxExpireMinutes>

Specifying the Least Amount of Time an Entry Can Exist in the Cache

3.2.3 - CacheMinExpireMinutes

You can override the minimum amount of time, in minutes, that an entry in the cache can exist before it is removed. The internal default is 10.

The following entry is an example:

<CacheMinExpireMinutes>10</CacheMinExpireMinutes>

Specifying the Least Amount of Time an Entry Can Exist in the Cache After Use

3.2.4 - CacheMinUserExpireMinutes

You can override the minimum amount of time, in minutes, that an entry in the cache can exist after it has been viewed by a user. The internal default is 10.

For example, if CacheMaxExpireMinutes is set to 60 minutes and a user views the entry during the 59th minute, the entry exists for that user for an additional 10 minutes. The user can continue paging through the data without requiring a new request to be run.

The following entry is an example:

<CacheMinUserExpireMinutes>10</CacheMinUserExpireMinutes>

4 - Documentation / Reference

dat/obiee/obips/presentation_service_cache.txt · Last modified: 2017/09/01 11:27 by gerardnico