Zuhause Datenbanken Was ist ein Abfrageoptimierer? - Definition aus techopedia

Was ist ein Abfrageoptimierer? - Definition aus techopedia

Inhaltsverzeichnis:

Anonim

Definition - Was bedeutet das Abfrageoptimierungsprogramm?

Ein Abfrageoptimierer ist eine DBMS-Komponente (Critical Database Management System), die SQL-Abfragen (Structured Query Language) analysiert und effiziente Ausführungsmechanismen ermittelt. Ein Abfrageoptimierer generiert einen oder mehrere Abfragepläne für jede Abfrage, von denen jeder ein Mechanismus zum Ausführen einer Abfrage sein kann. Der effizienteste Abfrageplan wird ausgewählt und zum Ausführen der Abfrage verwendet.


Datenbankbenutzer interagieren normalerweise nicht mit einem Abfrageoptimierer, der im Hintergrund ausgeführt wird.

Techopedia erklärt das Abfrageoptimierungsprogramm

SQL-Abfragen können einfache oder komplexe Anweisungen sein. Für jede SQL-Anweisung sind nur minimale Ressourcen erforderlich, z. B. Festplattenlesevorgänge und Serverspeicher. Das Abfrageoptimierungsprogramm stellt dies sowie die beschleunigte Ausführung jeder SQL-Abfrage sicher. Beispielsweise kann ein Abfrageoptimierer eine Reihe von Abfrageplänen basierend auf den Ressourcenkosten generieren. Ein Abfrageplan kann das Lesen einer Tabelle zum Abrufen einer Teilmenge ihrer Daten umfassen, während ein anderer die Verwendung von Tabellenindizes zum schnellen Lesen von Daten umfassen kann. Diese werden als kostenbasierte Optimierer bezeichnet.


Ein Abfrageoptimierer kann abhängig von den Umgebungsbedingungen unterschiedliche Abfragepläne für dieselbe Abfrage auswählen. Beispielsweise führt ein Benutzer eine Abfrage aus, die ungefähr die Hälfte der Daten einer Tabelle auswählt. Der Benutzer führt die Abfrage aus, wenn der Server mit mehreren gleichzeitigen Verbindungen überlastet ist. In diesem Szenario entscheidet sich das Abfrageoptimierungsprogramm möglicherweise für die Verwendung eines Abfrageplans, der auf der Grundlage begrenzter Ressourcen die erstellten Tabellenindizes aufruft, um die Abfrage zu erfüllen. Dies stellt eine minimale Serverauslastung durch die Abfrage sicher. Indem dieselbe Abfrage zu einem anderen Zeitpunkt mit mehr Ressourcen ausgeführt wird, kann das Abfrageoptimierungsprogramm feststellen, dass die Ressourcenbeschränkung kein Problem darstellt. In diesem Fall werden keine Tabellenindizes verwendet, und das Abfrageoptimierungsprogramm ermöglicht das vollständige Laden von Tabellen in den Serverspeicher.

Was ist ein Abfrageoptimierer? - Definition aus techopedia