Aggregate Storage Runtime Statistics

Statistics per Dimension

The following MaxL statement:

query database asoapp.asodb list aggregate_storage runtime_info;

Returns output which includes the following lines:

 parameter                                   value
+-------------------------------------------+--------------------
Dimension [Year] has [3] levels, bits used                      4
Dimension [Measures] has [1] levels, bits                       4
Dimension [Product] has [3] levels, bits u                      5
Dimension [Market] has [3] levels, bits us                      5
Dimension [Scenario] has [1] levels, bits                       2
...

For each dimension, the following statistics are shown:

  • The name of the dimension.

  • How many stored levels the dimension has, in the aggregate storage perspective. Not all levels are stored in aggregate storage databases; some are virtual levels.

  • The number of bits being used in the key for the dimension.

Each cell in an aggregate storage database is stored as a key/value pair. The key length is 8 bytes or a multiple of 8 bytes; for example, 8, 16, 24.

Each key corresponds to a numeric value in the database. The number of bits each dimension uses in the dimensional key is shown in the value column for each dimension.

The number of bits used in each key may amount to less than the bytes needed for physical storage of the key. As an example where this knowledge might be useful, consider a case in which a key is using 65 bits. If you can reduce the key length by one bit to 64, then you can have the key length be 8 bytes instead of 16, an improvement which reduces the overall size of the database. Another use for these statistics might be to examine them to see how much you gain from removing any particular dimension.

Statistics for the Whole Database

The same MaxL statement used above also returns the following lines in its output:

 parameter                           value                 
+-----------------------------------+----------------------
...
Max. key length (bits)                                   20
Max. key length (bytes)                                   8
Number of input-level cells                               0
Number of incremental data slices                         0
Number of incremental input cells                         0
Number of aggregate views                                 0
Number of aggregate cells                                 0
Number of incremental aggregate cells                     0
Cost of querying incr. data (ratio to total cost)         0
Input-level data size (KB)                                0
Aggregate data size (KB)                                  0

The whole-database statistics are described in the following table.

Table 3-19 Aggregate Storage Runtime Statistics MaxL Output

Column Name Description
Max. key length (bits) The sum of all the bits used by each dimension. For example, there are 20 bits in the key used for dimensions, and the first 4 are used by Year.
Max. key length (bytes) How many bytes the key uses per cell.
Number of input-level cells The number of existing level-0 cells in the database, including incremental slices.
Number of incremental data slices The number of data slices resulting from incremental data loads.
Number of incremental input cells

The number of level-0 cells in the incremental data slices.

To see the number of unique aggregate views, use the MaxL statement:

query database appname.dbname list existing_views;
Number of aggregate views The number of aggregate views in the database, including those automatically built on incremental slices.
Number of aggregate cells The number of cells stored in the database's aggregate views.
Number of incremental aggregate cells The number of cells stored in the incremental slices' aggregate views.
Cost of querying incr. data (ratio to total cost) The average percentage of query time spent processing incremental data slices. This functionality is useful in deciding when slices should be merged together to improve query performance.
Input-level data size (KB) The total disk space used by input-level data.
Aggregate data size (KB) The total disk space occupied by aggregate cells.

For input-level and aggregate cells, the above statistics show:

  1. Number of cells

  2. Disk space occupied by those cells

Because Essbase uses compression, these statistics are useful because it is not always possible to derive disk size based on the number of cells.