Apart from outline and calculation script design, your principal tools for Essbase optimization are RAM caches, report buffers, and data compression methods. You can also enhance Essbase performance by removing fragmentation. Essbase coordinates memory usage through the RAM caches, which are memory buffers used for the following activities
- Index cache—Holds IND pages
- Data cache—Holds recently accessed data blocks
- Data file cache—Holds PAG files
- Calculator cache—Tracks data blocks during calculation (bitmap)
- Dynamic calculator cache—Manages data blocks for dynamically calculated dense members
An Essbase database index is stored in one or more index files on the hard disk. When the database is active, the most recently accessed index pages are held in random access memory (RAM). Therefore, the portion of the index in memory is the portion of the index most recently used index. How much of the index is in memory at one time depends on the amount of RAM that is allocated to store index pages. The memory allocated for index pages is called the index cache.
Index Cache Minimum and Default Values
The minimum, default, and recommended values for the index cache are shown in the following:
Minimum 1 MB
Default 1 MB (Buffered I/O), 10 MB (Direct I/O)
Index Cache Recommended Values
Setting index cache values is not an absolute science. You should continually test different values for each database until you reach an optimal solution. Here are a few tips:
- Use the combined size of all ESSn.IND files, if possible; as large as possible otherwise.
- Do not set this cache size higher than the total index size, as no performance improvement results.