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 » So funktioniert der Optimierer

 

Optimiererschätzungen und Spaltenstatistiken

Der Optimierer wählt eine Strategie zur Verarbeitung einer Anweisung aufgrund von in der Datenbank gespeicherten Spaltenstatistiken und Heuristiken (fundierte Vermutungen). Für jeden Zugriffsplan, der vom Optimierer in Betracht gezogen wird, muss eine geschätzte Ergebnisgröße (Anzahl von Zeilen) berechnet werden. Es wird z.B. für jede Join-Methode oder für jeden Indexzugriff auf der Basis der Selektivitätsschätzungen für die in der Abfrage benutzten Prädikate eine geschätzte Ergebnisgröße berechnet. Die geschätzten Ergebnisgrößen werden benutzt, um den geschätzten Plattenzugriff und die CPU-Kosten für die einzelnen im Plan benutzten Operatoren wie etwa eine Join-Methode, eine Group By-Methode oder einen sequenziellen Scan zu berechnen. Der Optimierer benutzt Spaltenstatistiken als primäre Daten für die Berechnung von Selektivitätsschätzungen für Prädikate. Die Spaltenstatistiken sind daher ausschlaggebend für die korrekte Schätzung der Kosten eines Zugriffsplans.

Wenn Spaltenstatistiken veraltet sind oder fehlen, kann die Performance nachlassen, da fehlerhafte Statistiken zu ineffizienten Ausführungsplänen führen können. Wenn Sie den Eindruck haben, dass eine schlechte Performance auf fehlerhafte Statistiken zurückzuführen ist, sollten Sie die Statistiken neu erstellen. Weitere Hinweise finden Sie unter Spaltenstatistiken aktualisieren, um die Performance des Optimierers zu verbessern.


Wie der Optimierer Spaltenstatistiken verwendet
Wie der Optimierer Heuristiken verwendet
Wie der Optimierer Prozedurstatistiken verwendet
Spaltenstatistiken aktualisieren, um die Performance des Optimierers zu verbessern