SAP Message R7I333 - Multidimensional clustering for DataStore objects

Diagnosis
You want to select InfoObjects for multidimensional clustering (MDC) ofthe DataStore object.

System Response
Multidimensional clustering (MDC) physically organizes a table inblocks. Each block only contains data records with the same values inthe MDC dimensions. The size of a block is fixed and corresponds to theEXTENTSIZE of the tablespace. This is at least 2 pages. If a page is16K, a block requires at least 32K of memory.
Multi-dimensional clustering can significantly improve the performanceof database queries. If the queries contain restrictions on MDCdimensions, only the blocks of the table that contain the correspondingdimension values must be read. For the data access block indexes areused, which are considerably smaller than conventional row indexes andcan therefore be searched more quickly.
The deletion performance also benefits from the physical organization ofan MDC table and from the easier maintenance of smaller block indexes.

Procedure
Select one or more InfoObjects as MDC dimensions by assigning theInfoObjects sequential status numbers beginning with 1.
Follow these steps when selecting InfoObjects:

  • Select InfoObjects that you frequently use as restrictions in your
  • queries. For example, a time characteristic that you often use as arestriction in your queries is well-suited as an MDC dimension.
    • Select InfoObjects with a low cardinality. For example, the time
    • characteristic 0CALMONTH instead of 0CALDAY.
      • You cannot select more than three InfoObjects.

      • Assign the status numbers according to the following criteria:

      • Sort the InfoObjects according to how frequently they are used in BIqueries. That is, assign the lower status number to the InfoObject thatis used more frequently in BI queries.
        Sort the InfoObjects according to their selectivity. That is, assign thelower status number to the InfoObject with the higher selectivity.
        Note that for every combination of values in the MDC dimensions at leastone block is created that has at least 32K of memory. This memory areais allocated independent of the number of data records that have thesame combination of values in the MDC dimensions. If the number of datarecords with the same combination of values is not sufficient tocompletely fill the block, the free memory remains unused. This isbecause data records with a different combination of values in the MDCdimensions cannot be written to the block.
        If in the selected InfoObjects there are only a few data records in theDataStore object for each combination that arises in the DataStoreobject, and most of the blocks therefore have unused, free memory, anunnecessarily large amount of memory space is used for the table. Theperformance of the database queries therefore decreases, because many,only partially filled pages have to be read.
        It is not necessary to create additional secondary indexes on the MDCdimensions. The database uses the MDC block indexes for databasequeries.