INDEX CACHE

English (Español a continuación)

Essbase stores on disk a record of the blocks that exist and where they are, information that it uses when it has to access to a specific block:

  • There is an entry for every block that exists (combination of sparse dimensions).

This information is stored in “essxxxxx.ind” files (Index Files) on disk; are sequential:

  • “ess00001.ind”
  • “ess00002.ind”
  • “ess00003.ind”

Each file has a maximum size of 2.00 GB; when that size is reached the next file is generated.

Each “Index File” is made up of “Index Pages”, which contain the references of the blocks (“Index Entry”): one for each block

  • The size of each “Index Page” is 8 KB.
  • The size of each “Index Entry” is 112 bytes.

The total size of the “Index Files” can be consulted in “Database properties” / “Storage”.

This size can also be roughly calculated:

  • “Index Files” size = Number of existing blocks * 112 bytes.
  • It has a minimum size of 8 MB.

The “Index Cache” is a memory buffer that stores “Index Pages”: those that have been most visited recently.

  • As many files as the cache size allows are stored.

When Essbase needs to locate a block, it first goes to the “Index Cache” (which is faster); If the reference is not in the “Index Cache”, goes to disk.

The impact of the “Index Cache” will depend on the type of calculation:

  • For example, if we usually delete the entire database and load it completely, the “Index Cache” does not affect since Essbase creates new blocks; it does not search the “Index Cache” for existing blocks.

Cache size

  • Minimum size: 1MB
  • Maximum size: 4GB (32-bit Essbase) to 256 TB (64-bit Essbase)
  • Default size: 1 MB (I / O buffer); 10 MB (Direct I / 0)
  • Recommended size: sum of the size of all “essxxx.ind” files, plus an additional % for future increments (for example, 10%); if due to system limitations it is not possible, as large as possible.

In any case, if a good hit ratio is achieved with a smaller size, it is not necessary to increase the size.

Cache statistics

The “Index Cache” hit ratio indicates the % of times Essbase locates the index information in the “Index Cache” without having to go to disk.

  • It can be consulted in “Database properties” / “Statistics”

The hit ratio should be close to 1 (for example, 0.95 is good).

Español

Essbase guarda en el disco un registro de los bloques que existen y en qué lugar se encuentran, información que utiliza para cuando tiene que acceder a un bloque concreto:

  • Hay una entrada para cada bloque que existe (combinación de dimensiones dispersas).

Esta información se almacena en archivos “essxxxxx.ind” (Index Files) en el disco; son secuenciales:

  • “ess00001.ind”
  • “ess00002.ind”
  • “ess00003.ind”

Cada archivo tiene un tamaño máximo de 2,00 GB; cuando se alcanza ese tamaño se genera el siguiente archivo.

Cada “Index File” se compone de “Index Pages”, que contienen las referencias de los bloques (“Index Entry”): uno por cada bloque

  • El tamaño de cada “Index Page” es de 8 KB.
  • El tamaño de cada “Index Entry”  es de 112 bytes.

El tamaño total de los “Index Files” se puede consultar en “Propiedades de la base de datos” / “Almacenamiento”.

Este tamaño también se puede calcular de forma aproximada:

  • Tamaño “Index Files” = Nº de bloques existentes * 112 bytes
  • Tiene un tamaño mínimo de 8 MB.

El “Index Cache” es un buffer de memoria que almacena “Index Pages”: los que han sido más visitados recientemente.

  • Se almacenan tantos archivos como permita el tamaño del cache.

Cuando Essbase necesita localizar un bloque, primero acude al “Index Cache” (que es más rápido); si su referencia no se encuentra en el “Index Cache” acude al disco.

El impacto del “Index Cache” va a depender del tipo de cálculo:

  • Por ejemplo, si solemos borrar toda la base y cargarla completamente el “Index Cache” no afecta ya que Essbase crea nuevos bloques; no busca en el “Index Cache” los bloques existentes.

Tamaño del cache

  • Tamaño mínimo: 1MB
  • Tamaño máximo: 4GB (32-bit Essbase) a 256 TB (64-bit Essbase)
  • Tamaño por defecto: 1 MB (buffer I/O); 10 MB (Direct I/0)
  • Tamaño recomendado: suma del tamaño de todos los archivos “essxxx.ind”, más un % adicional para incrementos futuros (por ejemplo, un 10%); si por limitaciones del sistema no es posible, lo más grande posible.

En todo caso si con un tamaño menor se logra un hit ratio bueno no es necesario incrementar el tamaño.

Estadísticas del caché

El hit ratio del “Index Cache” indica el % de veces que Essbase localiza la información del índice en el “Index Cache” sin tener que acudir al disco.

  • Se puede consultar en “Propiedades de la base de datos” / “Estadísticas”

El hit ratio debería ser próximo a 1 (por ejemplo, un 0,95 es bueno).