Tuesday, 24 December 2013

Actions That Improves Performance of Essbase Restructuring

Several actions improve performance related to database restructuring:

  • If you change a dimension frequently, make it sparse.
  • Use incremental restructuring to control when Essbase performs a required database restructuring.
  • Consider using parallel restructuring on multiprocessor systems.
  • Select options when you save a modified outline that reduce the amount of restructuring required.                                                                                                                                                                           

Incremental Restructuring and Performance:

If you make frequent changes to a database outline, consider enabling incremental restructuring. With it enabled, Essbase defers restructuring so that a change to the database outline or to a dimension does not cause structural change. Essbase restructures the index and, if necessary, the affected block the next time the block is accessed.


Parallel Restructuring:

By default, block storage restructuring is performed sequentially. Blocks are renumbered and reshaped from first to last, a time-intensive process. Parallel restructuring can reduce restructuring time by dividing block restructuring work across multiple concurrent threads to use available processor cores. Because calculation is performed separately from restructuring, each block can be restructured independently of other blocks.

Blocks are divided into n groups, where n is the number of restructuring threads. This division is performed by traversing the breadth of the index BTree until the number of keys at a level is equal to or greater than n. If there is no level with more than n keys, the number of restructuring threads is reduced accordingly.

The number of restructuring threads to use is defined in essbase.cfg using the RESTRUCTURETHREADS configuration setting. If RESTRUCTURETHREADS is not defined, the default is one thread.

Options for Saving a Modified Outline:

Essbase displays a dialog box when you save outline changes that trigger database restructuring (using Outline Editor). In the Restructure Database dialog box, you define how data values are handled during restructure; for example, you can preserve all data, preserve only level 0 or input data, or discard all data during restructure.

Restructuring only input-level and level 0 data requires less disk space than restructuring all data.

Restructuring Considerations:

Outline Change Log:

If you activate the outline change log, Essbase records all activity that affects the outline (member name changes, member moves, and so on). The more changes you make to the outline, the more updates Essbase must make to the log, slowing performance. 

By default, Essbase does not log outline changes. To see whether outline logging is slowing performance, look for OUTLINECHANGELOG TRUE in the essbase.cfg file.

Essbase Partitioning Option:

When you use Partitioning, Essbase tracks outline changes so that you can synchronize the database outlines across partitions. Tracking outline changes slows restructuring, particularly when there are many structural changes.If Essbase restructures data when you are using partitioning, perform the following steps to make sure that data is synchronized across partitions:
      • Validate the partitions
      • Synchronize the outlines of the partitions.



No comments:

Post a Comment