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

SQL Anywhere 12.0.0 (Deutsch) » SQL Anywhere Server - SQL-Benutzerhandbuch » Abfragen optimieren und ausführen

 

So funktioniert der Optimierer

Die Rolle des Optimierers besteht darin, einen effizienten Weg zum Ausführen von SQL-Anweisungen zu finden. Dazu muss der Optimierer einen Ausführungsplan für eine Abfrage festlegen. Dieser Plan umfasst Entscheidungen über die Zugriffsreihenfolge für Tabellen, die in der Abfrage referenziert werden, über die Join-Operatoren und Zugriffsmethoden für jede Tabelle sowie darüber, ob materialisierte Ansichten, die nicht in der Abfrage referenziert werden, zur Berechnung von Teilen der Abfrage benutzt werden können. Der Optimierer versucht, den besten Plan für die Ausführung der Abfrage während der Join-Enumerationsphase auszuwählen, während der mögliche Zugriffspläne für eine Abfrage generiert und die Kosten berechnet werden. Der beste Zugriffsplan ist derjenige, der nach Einschätzung des Optimierers die gewünschte Ergebnismenge in der kürzesten Zeit und mit den geringsten Kosten liefern wird. Der Optimierer ermittelt die Kosten jeder bei der Enumeration gefundenen Strategie, indem er die Anzahl der erforderlichen Lese- und Schreibvorgänge schätzt.

In Interactive SQL können Sie den besten Zugriffsplan zum Ausführen einer Abfrage anzeigen, indem Sie auf Extras » Plananzeige klicken. Siehe Grafische Pläne lesen und Ausführungspläne lesen.

 Die Kosten für die Rückgabe der ersten Zeile minimieren
 Semantisch äquivalente Syntax verwenden
 Die Kosten von Optimierungsabfragen vermindern

Optimiererschätzungen und Spaltenstatistiken
Performance automatisch optimieren
Grundlegende Annahmen des Optimierers
Prädikate in Abfragen verwenden
Kostenbasierte Optimierung mit MIN- und MAX-Funktionen
Planzwischenspeicherung