A new Essbase configuration setting, ASODYNAMICAGGINBSO, controls whether block storage databases use hybrid aggregation mode. Hybrid aggregation for block storage databases means that wherever possible, block storage data calculation executes with efficiency similar to that of aggregate storage databases.
The following are some scenarios where hybrid aggregation is highly likely to improve calculation performance:
- A block storage database has stored members that are not level 0, and are calculated according to hierarchy (rather than by calculation scripts).
- A Dynamic Calc member has more than 100 children.
- You are using a transparent partition between an empty aggregate storage target and a block storage source. If the formulas on the aggregate storage target are simple and translatable to block storage formula language, you can achieve fast results on block storage using hybrid aggregation.
- You are using a transparent partition between two block storage databases, and calculation performance is a concern.
ASODYNAMICAGGINBSO [appname [dbname]] NONE | PARTIAL | FULL
|appname||Optional. If you specify only an application, all the databases in that application are affected. If you leave out the application and database name parameters, the setting applies to the entire server.|
|dbname||Optional. If you specify an application and database, the database you specify is affected by the setting.|
|NONE||Disable hybrid aggregation in block storage databases (the default).|
|PARTIAL||Turn on hybrid aggregation only for simple outline aggregations based on the consolidation operators +, -, and ~, but excluding the operators *, /, and %. Leave formulas to be calculated in block storage mode.|
|FULL||Turn on hybrid aggregation for simple aggregations and formula calculations. See Notes for formula limitations.|
Outline Structure for Hybrid Aggregation
To use hybrid aggregation most effectively:
- If there are non-level-0 stored members that are batch calculated based solely on their hierarchy, it’s recommended that you convert them to Dynamic Calc members.
- If the conversion to Dynamic Calc members affects solve order for dependent formulas, you may also need to adjust the outline’s order of dimensions, and/or their dense or sparse configurations, to align the solve order with the previous batch calculation order.
During hybrid aggregation, Dynamic Calc and Store members are treated as stored members.
If enabled, hybrid aggregation is supported for member formulas using any of the following functions: @CHILDREN, @EXP, @INT, @ISMBR, @MIN, @MINSRANGE, @MOD, @MODE, @NOTEQUAL, @POWER, @RANGE, @REMAINDER, @ROUND, @VAR, @VARIANCEP, and @VARPER.
The following types of calculations are not supported for hybrid mode. Essbase detects when these conditions are present, and calculates them in block storage mode.
- Time-balance tagged members
- Attribute calculations
- Formulas with cross-dimensional operators
- Dynamic Calc members with formulas that are a target of transparent partitions
- Queries which include both two-pass and one-pass dynamic calc members from the same dimension
If a query mixes supported and unsupported hybrid mode calculation types, Essbase defaults to block storage execution.
Formulas with dimension references can run in hybrid mode in the following cases:
- Sparse-to-Sparse: The formula is set on a sparse dimension member, and the formula only references member combinations from sparse dimensions.
- Dense-to-Dense: The formula is set on a dense dimension member, and the formula only references member combinations from dense dimensions.
- Sparse-to-Dense/Sparse: The formula is set on a sparse dimension member, and the formula references member combinations from both dense and sparse dimensions. The dense dimension members must be stored.
Example: On a sparse Product dimension, a Dynamic Calc member [Stereo_HY1] has the formula @MINSRANGE(“Stereo”,”Qtr1″:”Qtr2″);.
The formula depends on the dense Year dimension for [Qtr1] and [Qtr2], and the sparse Product dimension for [Stereo].