Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Walburga Stuckert Geändert vor über 9 Jahren
1
WS 2004/2005 Datenbanken II - 5W Mi 17:00 – 18:30 G 3.18 Vorlesung #3 Anfragebearbeitung (Teil 1)
2
WS 2004/2005 Datenbanken II - 5W Mi 17:00 – 18:30 G 3.18 © Bojan Milijaš, 03.11.2004Vorlesung #3 - Anfragebearbeitung (Teil 1)2 „Fahrplan“ Besprechung der Übungsaufgaben (kurz) Logische Optimierung (prüfungsrelevant) Äquivalenzen in der relationalen Algebra Anwendung von Transformationsregeln Physische Optimierung Selektion Matchings (binäre Zuordnungsoperationen: Join, Mengendurchschnitt, Mengendifferenz) Gruppierung und Duplikatelimierung Projektion und Vereinigung Zwischenspeicherung Kostenmodelle... Fazit und Ausblick Vorlesung #3
3
WS 2004/2005 Datenbanken II - 5W Mi 17:00 – 18:30 G 3.18 © Bojan Milijaš, 03.11.2004Vorlesung #3 - Anfragebearbeitung (Teil 1)3 Anfragebearbeitung Wegen Datentunabhängigkeit werden Anfragen in SQL auf sehr allgemein auf dem logischen Schema formuliert Nun muss es eine Komponente in DBMS geben, die die Grenze zwischen der logischen und der physischen Ebene definiert und überbrückt Anfrageoptimierung Anfrageoptimierung wandelt eine abstrakte Abfrage in eine möglichst effiziente Implementierung – den Auswertungsplan – der dann kompiliert oder über einen Interpreter direkt gestartet wird ... Kemper 8.2
4
WS 2004/2005 Datenbanken II - 5W Mi 17:00 – 18:30 G 3.18 © Bojan Milijaš, 03.11.2004Vorlesung #3 - Anfragebearbeitung (Teil 1)4
5
WS 2004/2005 Datenbanken II - 5W Mi 17:00 – 18:30 G 3.18 © Bojan Milijaš, 03.11.2004Vorlesung #3 - Anfragebearbeitung (Teil 1)5 Anfragebearbeitung (2) Nach der Syntax- und der semantischen Analyse wird die Anfrage in einen Ausdruck der relationalen Algebra umgewandelt Anfrageoptimierer (Optimizer) erzeugt eine Vielzahl von logisch äquivalenten Auswertungsplänen, die in Ihrer Ausführungsdauer (Kosten) unterschiedlich sind. (Kosten = mit Hilfe eines Kostenmodells geschätzte Ausführungsdauer). Auf Basis von „Kostenvoranschlägen“ wird der optimalen Plan ausgewählt. Kostenmodelle basieren auf Schemainformationen und Statistiken über Relationen, Indexstrukturen und Verteilung der Attributwerte (Histogramme)
6
WS 2004/2005 Datenbanken II - 5W Mi 17:00 – 18:30 G 3.18 © Bojan Milijaš, 03.11.2004Vorlesung #3 - Anfragebearbeitung (Teil 1)6 Logische Optimierung Sehr prüfungsrelevant !!! Eine SQL Abfrage wird in einen Ausdruck der relationalen Algebra umgewandelt Mit Hilfe von Transformationsregeln wird dieser Ausdruck in einen äquivalenten optimierten Ausdruck umgeformt und dann an die physische Optimierung weitergereicht Zur besseren Veranschaulichung werden relational algebraische Ausdrücke als Auswertungsbäume dargestellt ... Kemper 8.3- 8.27
7
WS 2004/2005 Datenbanken II - 5W Mi 17:00 – 18:30 G 3.18 © Bojan Milijaš, 03.11.2004Vorlesung #3 - Anfragebearbeitung (Teil 1)7 Logische Optimierung (Fazit) 12 äquivalenzerhaltende Transformationsregeln der relationalen Algebra und deren Anwendung Grundidee: die Regeln so anwenden, dass die Ausgaben der einzelnen Operatoren möglichst klein sind! 6 Heuristiken Aufbrechen von Selektionen Selektionen nach unten schieben Selektionen + Kreuzprodukte Joins Joins nach möglichst kleinen Zwischenergebnisse Einfügen von Projektionen Projektionen nach unten schieben
8
WS 2004/2005 Datenbanken II - 5W Mi 17:00 – 18:30 G 3.18 © Bojan Milijaš, 03.11.2004Vorlesung #3 - Anfragebearbeitung (Teil 1)8 Physische Optimierung Für einen logischen Algebraoperatoren kann es mehrere unterschiedliche Realisierungen d.h. physische Operatoren geben Indexe oder Vorsortierung spielen bei der Wahl der Realisierung eine wichtige Rolle Physische Operatoren werden als „Iteratoren“ dargestellt mit Operationen open, next, close, cost und size Keine Zwischenspeicherung der Ergebnisse notwendig, Pipelining möglich Kemper 8.27 – 8.127
9
WS 2004/2005 Datenbanken II - 5W Mi 17:00 – 18:30 G 3.18 © Bojan Milijaš, 03.11.2004Vorlesung #3 - Anfragebearbeitung (Teil 1)9 Physische Optimierung (Fazit) Iteratoren Selektion, Matching, Gruppierung und Duplikateliminierung, Projektion und Vereinigung, Zwischenspeicherung 3 prinzipielle Methoden Brute Force (sequentiell, Nested Loop Join) Ausnutzung der Sortierung (Merge Join) Ausnutzung von Indexstrukturen und Hashing (Index Join, Hash Join) Sortierung von Zwischenergebnissen muss wegen Hauptspeichermangels als Mergesort implemetiert werden, wobei mehrere Läufe (Runs) einzeln sortiert und gemischt werden.
10
WS 2004/2005 Datenbanken II - 5W Mi 17:00 – 18:30 G 3.18 © Bojan Milijaš, 03.11.2004Vorlesung #3 - Anfragebearbeitung (Teil 1)10 Ausblick Vorlesung #4 Physische Optimierung Kostenmodelle Fortsetzung Tuning Transaktionsverwaltung Definition Anforderungen Operationen (Begin, Commit, Abort) ACID Paradigma (Atomicity, Consistency, Isolation, Durability) in SQL
11
WS 2004/2005 Datenbanken II - 5W Mi 17:00 – 18:30 G 3.18 Vorlesung #3 Ende
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.