In-Memory DB Memory Requirements

Estimating the memory requirements of a Jedox In-Memory Database depends on several factors, but as a general rule, the data storage needs approximately 10-16 bytes in RAM for a numeric cube cell. Note that more bytes might be needed for large models.

The main drivers for the "bytes per cell" value are:

  • number of dimensions used in the cube
  • size of dimensions (number of elements)
  • density of data in last dimensions (dense data can be stored more efficiently)
  • value format (integral values need less memory than floating point values)

Only filled cells are stored in memory. Note that in productive use, more available memory will typically be required (e.g. caches for query and rule processing, data consistency management, or session handling).

Available memory requirements

Generally, the factor 2.5 can be used to estimate memory requirements for a given size of storage data.

memory required = storage data * 2.5

Example:

Cube features:

  • 8 dimensions
  • 20k elements in largest dimension
  • 12 bytes per cell
  • 25 million filled cells
  • 300 MB storage data (see cube .bin file)

Available memory requirement: 300 MB * 2.5 = 750 MB

Updated June 5, 2023