Aggregate Storage Cache

Monitor the Essbase aggregate storage cache size as needed. The cache facilitates memory usage during data loads, aggregations, and retrievals.

When an aggregate storage outline is started, a small area in memory is allocated as the aggregate storage cache for the relevant application. As additional cache area is needed, the cache size incrementally increases until the maximum cache size is used or the operating system denies additional allocations.

Note:

Denial of aggregate cache memory allocations does not deny increased use of existing memory.

You can view the current aggregate storage cache memory allocation and the maximum aggregate cache size setting.


Cube statistics for sample cube ASOSamp.Basic. Runtime statistics include Load Status, Cache Hit Ratio, Current Cache Size (KB), Current Cache Size Limit (KB), Page Reads Since Last Startup, Page Writes Since Last Startup, Page Size (KB), Disk Space Allocated for Data (KB), Disk Space Used by Data (KB), Temporary Disk Space Allocated (KB), and Temporary Disk Space Used (KB). Storage statistics include Maximum Key Length (in bits and in bytes), Number of Input-level Cells, Number of Incremental Data Slices, Number of Incremental Input Cells, Number of Aggregate Views, Number of Aggregate Cells, Cost of Querying Incremental Data, Input-level Data Size (KB), and Aggregate Data Size.

Changing the cache size may optimize memory use. The default maximum cache size, 32 MB, is its minimal setting.

You can use the size of input-level data to determine when to increase the maximum size for the cache. In the Essbase web interface, the statistic is called Input-level Data Size. In MaxL you can get the same information from the statement query database (with keywords get cube_size_info).

A 32 MB cache setting supports a database with approximately 2 GB of input-level data. If the input-level data size is greater than 2 GB by some factor, the aggregate storage cache can be increased by the square root of the factor. For example, if the input-level data size is 3 GB (2 GB * 1.5), multiply the aggregate storage cache size of 32 MB by the square root of 1.5, and set the aggregate cache size to the result: 39.04 MB.

For aggregation materialization performance, consider the number of threads set for parallel calculation. The aggregation materialization process uses multiple threads that divide the aggregate storage cache. Increasing the number of threads for aggregate storage applications or cubes may require an increase in aggregate storage cache size.

To view aggregate storage cache size, you can use the query application MaxL statement, and to set it, use alter application.

Note:

Setting the number of threads higher than the number of processors may improve aggregate storage application performance.

Do not increase the maximum size of the aggregate storage cache beyond what is needed.

A changed aggregate storage cache setting becomes effective when the application is restarted.