Show TOC

Definition des ClusteringLocate this document in the navigation structure

Verwendung
Voraussetzungen

Das Clustering lässt sich nur ändern, solange das DataStore-Objekt noch keine Daten enthält. Das Clustering von bereits gefüllten DataStore-Objekten können Sie mit der Funktion Reclustering ändern.

Weitere Informationen finden Sie unter Reclustering.

Funktionsumfang

Wählen Sie in der DataStore-Pflege Anfang des Navigationspfads Zusätze Nächster Navigationsschritt DB Performance Nächster Navigationsschritt Clustering Ende des Navigationspfads aus.

Auf dem Bild Mehrdimensionales Clustering können Sie die MDC-Dimensionen für das DataStore-Objekt auswählen.

Wählen Sie ein oder mehrere InfoObjekte als MDC-Dimensionen aus, indem Sie für die InfoObjects fortlaufende Ordnungsnummern beginnend mit 1 vergeben. Die Ordnungsnummer zeigt an, ob ein Feld als MDC-Dimension ausgewählt ist und legt die Reihenfolge der MDC-Dimensionen im zusammengesetzten Blockindex fest.

Hinweis

Der zusammengesetzte Blockindex wird neben den Blockindizes auf den einzelnen MDC-Dimensionen datenbankintern angelegt und enthält die Felder aller MDC-Dimensionen. Die Reihenfolge der MDC-Dimensionen kann einen geringen Einfluss auf die Performanz von Tabellenabfragen haben, die auf allen MDC-Dimensionen eingeschränkt sind und für die beim Zugriff der zusammengesetzte Blockindex verwendet wird.

Gehen Sie bei der Auswahl wie folgt vor:

  • Wählen Sie InfoObjects aus, auf denen Sie in Ihren Abfragen häufig einschränken. Beispielsweise bietet sich ein Zeitmerkmal als MDC-Dimension an, auf das Sie in Ihren Abfragen häufig einschränken.

  • Wählen Sie InfoObjects mit einer geringen Kardinalität aus. Beispielsweise das Zeitmerkmal 0CALMONTH anstelle von 0CALDAY.

    Sie können nicht mehr als drei InfoObjects auswählen.

  • Vergeben Sie die Ordnungsnummern nach den folgenden Kriterien:

    • Sortieren Sie die InfoObjects nach der Häufigkeit Ihres Vorkommens in Abfragen, d.h. vergeben Sie die niedrigere Ordnungsnummer an das InfoObject, das häufiger in Abfragen vorkommt.

    • Sortieren Sie die InfoObjects nach ihrer Selektivität, d.h. vergeben Sie die niedrigere Ordnungsnummer an das InfoObject mit den meisten verschiedenen Datensätzen.

      Achtung

      Beachten Sie, dass für jede Wertekombination in den MDC-Dimensionen mindestens ein Block angelegt wird. Dieser Speicherbereich wird unabhängig von der Anzahl der Datensätze, die die gleiche Wertekombination in den MDC-Dimensionen besitzen, reserviert. Reicht die Anzahl der Datensätze mit gleicher Wertekombination nicht aus um einen Block vollständig zu füllen, bleibt der freie Speicher ungenutzt, da Datensätze mit einer anderen Wertekombination in den MDC-Dimensionen nicht in den Block geschrieben werden können.

      Wenn es für jede im DataStore-Objekt vorkommende Kombination in den ausgewählten MDC-Dimensionen jeweils nur wenige Datensätze gibt und somit die meisten Blöcke ungenutzten, freien Speicher enthalten, wird unnötig viel Speicherplatz für die aktive Tabelle verbraucht. Dabei verschlechtert sich auch die Performance von Tabellenabfragen, weil viele, nur wenig gefüllte Seiten gelesen werden müssen.

Beispiel

Die Größe eines Blockes richtet sich nach der PAGESIZE und der EXTENTSIZE des Tablespace. Die PAGESIZE für den DataStore-Tablespace, der der Datenklasse DODS zugeordnet ist, beträgt standardmäßig 16K. Bis zum Release SAP BW 3.5 war der Standardwert für EXTENTSIZE 16. Ab dem Release SAP NetWeaver 7.0 ist der neue Standardwert für EXTENTSIZE 2.

Bei einer EXTENTSIZE von 2 und einer PAGESIZE von 16K ergibt sich ein Speicherbereich von 2 * 16K = 32K, der pro Block reserviert wird.

Die Breite eines Datensatzes richtet sich nach der Breite und Anzahl an Schlüsselfeldern und Datenfeldern im DataStore-Objekt.

Enthält beispielsweise ein DataStore-Objekt 10 Schlüsselfelder mit je 10 Byte Breite und 30 Datenfeldern mit durchschnittlich 9 Byte Breite benötigt ein Datensatz 10 * 10 Byte + 30 * 9 Byte = 370 Byte. In einen Block der Größe 32K können somit 32768 Byte / 370 Byte ~ 88 Datensätze geschrieben werden. Somit sollten mindestens 80 Datensätze pro Wertekombination in den MDC-Dimensionen existieren um den allokierten Speicherplatz in der aktiven Tabelle optimal zu nutzen.