Essbase allows you to choose whether data blocks that are stored on disk are compressed, as well as which compression scheme to use. When data compression is enabled, Essbase compresses data blocks when it writes them out to disk. Essbase fully expands the compressed data blocks, including empty cells, when the blocks are swapped into the data cache.
Generally, data compression optimizes storage use. You can check compression efficiency by checking the compression ratio statistic. See Checking the Compression Ratio.
Essbase provides several options for data compression:
Bitmap compression, the default
Essbase stores only nonmissing values and uses a bitmapping scheme.
Essbase compresses repetitive, consecutive values, including zeros and #MISSING values.
Essbase builds a data dictionary based on the actual data being compressed.
Essbase applies this compression if the block density is less than 3%.
Essbase does not compress data blocks when they are written to disk.
Because Essbase compresses data blocks as they are written to disk, it is possible for bitmap, RLE, and uncompressed data blocks to coexist in the same data file. Keep in mind the following rules:
When a compressed data block is brought into the data cache, Essbase expands the block to its full size, regardless of the scheme that was used to compress it.
When Essbase stores a block on disk, Essbase treats the block the same whether it was compressed or uncompressed when it was brought into the data cache. In either case, Essbase compresses the block according to the specified compression type (including not compressing it if no compression is specified).
If compression is not enabled, Essbase writes out the fully expanded block to disk.
You may want to disable data compression if blocks have very high density (90% or greater) and have few consecutive, repeating data values. Under these conditions, enabling compression consumes resources unnecessarily.