Splashing

In a multidimensional database, data is stored in base cells. The values of consolidated cells are aggregations of the values of their underlying base cells.

Still it is possible to write a numeric value into a consolidated cell. The value is then distributed to the underlying base cells according to the specified allocation mode. This operation is called splashing.

Allocation modes

This table describes the possible allocation modes:

Allocation mode Description
Equal The value is divided equally and then written to all the involved base cells.
Absolute distribution Similar to Equal, but the value is not divided. Instead the value itself is written to all the involved base cells.
Weighted The distribution is decided using the existing base cell values, including their aggregation factors, as weights. If all base cells are NULL or 0, this mode fails.
Weighted or equal First Weighted is attempted. If it fails, then Equal is used.
External weighted The value is written to the base cells using external values to define the distribution. A second set of coordinates with Purpose="Source" must be specified to indicate the external values to use. If all external values are NULL or 0, this mode fails. An exception is the case when the splashed value is 0 and DoNotDeleteOnZero is enabled. Then the target area is cleared.

The cell that serves as a source of the distribution must be calculated in a similar way as the target cell of the splash operation. These cases meet the similarity criteria:

  • The target and the source cell have the same element in the same dimension.
  • The target cell has a base element in one dimension and the source cell has a different base element in the same dimension.
  • The target cell has a base element in one dimension and the source cell has a consolidated element in the same dimension.
  • The target cell has a consolidated element with three base elements as children. The source cell has a different consolidated element with three different base elements as children in the same dimension. The configured aggregation factors are the same on all involved base elements.

These cases do not meet the similarity criteria:

  • Same scenario as in the previous case, but the children of the source element have different configured weights.
  • The element in the target cell has three children while the element in the source has four children.
External weighted delta Similar to External weighted but the target area is also taken into account. The difference between the current target cell value and the splash value is used for distribution.
External weighted basic

Similar to External weighted but rules on cells in the source area are not calculated. Only stored base values are used as a source for the distribution. Due to this difference the execution of the splash operation is faster in some cases.

Be aware that rules in the target or source area may result in an unexpected value in the target cell.

Additional conditions must be fulfilled to use this mode:

  • The source cube must be the same as the target cube.
  • The condition for similarity is stronger. Either the coordinates of both source and target cells must be base elements or both coordinates can be consolidated elements but the count of children (and all descendants recursively) as well as their aggregation factors must be the same.
Mixed This allocation mode mixes the distributions provided by multiple areas. It is only available for the Cube Splashing XML function.
Mixed delta This allocation mode mixes the distributions provided by multiple areas and adds the result to the target area. It is only available for the Cube Splashing XML function.

Options

This table describes the options:

Option Description
Rounding If enabled then the values written to the base cells are rounded to the indicated number of decimal places.
DecimalPlaces If rounding is enabled (either implicitly or explicitly) then the values written to the base cells are rounded to the indicated number of decimal places. The minimum is 0 and the maximum is 6.
ErrorCorrection The error correction tries to fix the case that the calculated value on the target cell after the splash operation does not comply with the value provided by the caller. This can happen for example when rounding is enabled. To correct the error one of the cells written during the operation will be adjusted.
Undo If enabled, the operation creates a file on the database side that allows to rollback the changes applied by the splash operation. This file relates to the session that executed the splashing operation. It will be deleted when the session is closed.
DoNotDeleteOnZero By default, none of the splashing operations write the value 0 to a cell. They delete the cell value instead. If the value 0 must be stored in the cell, the DoNotDeleteOnZero option can be enabled. In this case, the value 0 is written into the base cells. This option is disabled by default.