Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - SQL-Benutzerhandbuch » Abfrageverarbeitung » Abfragen optimieren und ausführen » Abfrageperformance verbessern » Indizes

 

Index-Performance verbessern

Wenn Ihr Index eine schlechtere Performance hat als erwartet, können Sie die folgenden Maßnahmen in Betracht ziehen:

Diese Maßnahmen sollen die Indexselektivität und die Auffächerung des Indexes, wie unten beschrieben, erhöhen.

Indexselektivität

Indexselektivität bezieht sich auf die Fähigkeit eines Indexes, einen gewünschten Indexeintrag zu finden, ohne zusätzliche Daten lesen zu müssen.

Bei niedriger Selektivität müssen zusätzliche Informationen von der Tabellenseite, die der Index referenziert, abgerufen werden. Diese Abrufe werden Vollvergleiche (full compares) genannt und beeinträchtigen die Index-Performance.

Die Eigenschaftsfunktion FullCompare protokolliert die Anzahl der aufgetretenen vollen Vergleiche. Sie können auch diese Statistik mit dem Systemmonitor von Sybase Central oder dem Windows-Systemmonitor überwachen.

Hinweis

Der Windows-Systemmonitor ist unter Windows Mobile möglicherweise nicht verfügbar.

Außerdem wird die Anzahl der vollen Vergleiche im grafischen Plan mit Statistik angezeigt. Weitere Hinweise finden Sie unter Häufig im Plan verwendete Statistiken.

Weitere Hinweise zur Funktion "FullCompare" finden Sie unter Datenbankeigenschaften.

Indexstruktur und Ausfächern des Indexes

Indizes sind auf mehreren Ebenen organisiert, vergleichbar mit einer Baumstruktur. Die erste Seite eines Indexes, auch Stammseite genannt, unterteilt sich in eine oder mehrere Seiten auf der nächsten Ebene und jede dieser Seiten unterteilt sich erneut, bis die unterste Ebene des Indexes erreicht ist. Diese Indexseiten auf der untersten Ebene werden Blattseiten genannt. Um eine bestimmte Zeile zu finden, benötigt ein Index mit n Ebenen n Lesevorgänge für Indexseiten und einen Lesevorgang für die Datenseite mit der gesuchten Zeile. Im Allgemeinen sind weniger als n Lesevorgänge von der Festplatte notwendig, da häufig verwendete Indexseiten meistens im Cache gespeichert sind.

Die Indexauffächerung ist die auf einer Seite gespeicherte Anzahl von Indexeinträgen. Ein Index mit einer höheren Auffächerung hat eventuell weniger Ebenen als ein Index mit einer niedrigeren Auffächerung. Daher bedeutet eine höhere Index-Auffächerung im Allgemeinen eine bessere Index-Performance. Durch die Wahl der richtigen Seitengröße für Ihre Datenbank können Sie die Index-Auffächerung verbessern. Weitere Hinweise finden Sie unter Tabellen- und Seitengrößen.

Die Anzahl der Ebenen in einem Index können Sie mit der Systemprozedur sa_index_levels anzeigen. Weitere Hinweise finden Sie unter sa_index_levels-Systemprozedur.


Zusammengesetzte Indizes