Start of Content Area

Function documentation InfoCube Performance  Locate the document in its SAP Library structure

Use

Here you will find options to influence not only the load performance, but also the query performance.

Features

Database Indexes

With an increasing number of data records in the InfoCube, both the load and query performances can be reduced. This is due to the increasing demands on the system for maintaining indexes. The indexes that are created in the fact table for each dimension are necessary to enable you to easily find and select the data. When initially loading data into the InfoCube, you should not create the indexes at the same time as constructing the InfoCube, but rather afterwards.

The indexes displayed here are the secondary indexes of the F and E fact tables for the InfoCube. The primary indexes and those defined by the user are not displayed. The aggregates area deals with the associated indexes of the fact table for all aggregates of the InfoCube.

Checking Indexes

Using the Check Indexes button, you can check whether indexes already exist and whether these existing indexes are of the correct type (bitmap indexes).

Yellow status display: There are indexes of the wrong type

Red status display: No indexes exist, or one or more indexes are faulty

You can also list missing indexes using transaction DB02, pushbutton Missing Indexes. If a lot of indexes are missing, it can be useful to run the ABAP reports SAP_UPDATE_DBDIFF and SAP_INFOCUBE_INDEXES_REPAIR.

Deleting Indexes

For delta uploads with a large quantity of data (more than a million records), you should not align the database indexes of the InfoCube with every roll up, but rather delete the indexes first, then completely reconstruct them after rolling up. Parallel loading is only possible when the indexes are deleted.

With Delete DB indexes (immediately), the indexes of the F and E fact tables are deleted. With Delete DB indexes (batch), the indexes of the F fact table are deleted.

Repairing Indexes

Using this function you can create missing indexes or regenerate deleted indexes. Faulty indexes are corrected.

Building Indexes

You can delete indexes before each data load and rebuild them again afterwards. You can also set this automatic index build for delta uploads.

With Build DB indexes (batch), the indexes of the F and E fact tables are rebuilt.

Aggregate Table Indexes

The same as for the indexes of the fact table, you can maintain the indexes of the aggregate tables. Maintaining the indexes of the aggregate tables affects all the aggregate tables of the InfoCube.

Note

If the InfoCube contains more than 50 million records, you should, as a rule, refrain from deleting and recreating indexes.

Database Statistics

The database statistics are used by the system to optimize the query performance. For this reason, you should keep the database statistics up-to-date.

It is recommended that you always update the statistics if you have loaded more than a million new records into the InfoCube since the last update.

You can automatically recalculate the database statistics after each load or after each delta upload.

Using the pushbutton Check Statistics, you can check the InfoCube to see if statistics exist. If no statistics exist yet, the status display changes to red. Using Recalculate Statistics, you can add the missing InfoCube statistics in the background.

You can determine the percentage of InfoCube data that is used to create the statistics. The percentage is set to 10% by default. The larger the InfoCube, the smaller the percentage you should choose, since the demand on the system for creating the statistics increases with the change in size.

Note

For up to 10 million entries in the InfoCube, you should set the percentage of InfoCube data that is used for creating the statistics to 100%.

Caution

Automatic deletion and building of indexes, as well as automatic calculation of database statistics, can cause conflicts with automatic compression and rollup (see Automatic Subsequent Processing). These processes mutually lock each other. More information: Functional Constraints of Processes

If you use process chains to guarantee serial processing of the processes, these settings are not supported for the object. In this case you have to include the automatic processes as process types in the process chain.

See also the example for Integrating InfoCube in Process ChainIncluding InfoCubes in Process Chains.

 

End of Content Area