Performance Considerations

Limit the number of (leaf) cells to be updated

For data entry processing performance reasons, it is better to avoid updating too many cells at the same time. When updating multiple cells, the application runs dependency checks and verifies potential restrictions pairwise. This leads to quadratic growth with the number of changed cells in several cases. While this can be considered inconvenient, it is actually faster to split the update into multiple smaller ones, rather than running a single sizable update in one go.

A technical limit restricts the number of low-level data changes to avoid runtimes growing too long. When that limit is exceeded, the application produces an error message and data entries are rejected. This can also happen when updating a limited number of cells, as each of them might lead to multiple changes on lower hierarchy levels.

Simple Scenarios

For simpler cases of mass data entry, the above-mentioned dependency checks are not necessary as the grid setup isn't as complex. Dependency checks can be skipped if the grid meets the following conditions:

  • There are no visible cells using one of the following features:

    • Formulas

    • Lookup

    • Dynamic Time Navigation

    • Calculated Dimensions

  • All visible dimensions are restricted to leaves.
Tip

This can be achieved either by selecting leaves manually, or by selecting the Show only leaves in widget option in the hierarchy settings for the given dimension, if available.

Note that for performance reasons, the actual area of changed cells is not specifically considered with respect to these conditions. The whole grid needs to fulfill them.

Bigger copy and paste mass data entries often meet these conditions. If they don’t already, a few changes could be sufficient.

This can significantly improve performance. If you notice a sudden drop in performance, it can be worth checking whether the grid still meets the conditions.

Bulk Deletions

This also applies when deleting a large number of cells. However, there are two main differences:

  • For deletions to run quicker, visible dimensions don’t have to be restricted to leaves only.

  • Performance gains are only possible if the cells you delete form a rectangle with no gaps.

The latter is met automatically if you mark an area for deletion by dragging from one edge to another. However, removing a few cells from a large area can significantly slow down the processing, even if they are still unbooked and don’t necessarily require deletion.