Physische Anfrageoptimierung
|
|
- Carsten Fiedler
- vor 5 Jahren
- Abrufe
Transkript
1 Web Science & Technologies University of Koblenz Landau, Germany Grundlagen der Datenbanken Dr. Jérôme Kunegis Wintersemester 201/14
2 Ziel der physischen Optimierung π[titel] Konkrete Implementation der Operatoren einsetzen π[persnr] π[titel, gelesenvon] σ[name = 'Einstein'] Professoren Vorlesungen Mehrere Implementation des gleichen logischen Operators Auswahl der am besten geeigneten Implementation 2
3 Iteratorkonzept
4 Prozeduraler Ansatz π[titel] Jeder Operator ist eine Prozedur π PersNr π Titel, gelesenvon Einfach zu implementieren σ name = 'Einstein' Professoren Vorlesungen Zwischenergebnisse müssen immer komplett vorgehalten werden 4
5 Iteratorkonzept Operatoren zum Durchlaufen der Ergebnismenge Liefern immer nur ein (nächstes) Tupel Iterator Abstrakter Datentyp Standard-Methoden Open Next Close Im Idealfall müssen keine Zwischenergebnisse gespeichert werden Schwieriger zu implementieren Cost Size Kostenmodelle 5
6 Pull-based Query Evaluation Wurzeliterator next open Ergebnis 6
7 Pipelining vs. Pipeline-Breaker R S T 7
8 Pipelining vs. Pipeline-Breaker R S T 8
9 Pipeline-Breaker Unäre Operationen Sortieren (SORT BY) Duplikaten-Elimination (UNIQUE, DISTINCT) Aggregierende Operatoren (MIN, MAX, SUM, ) Binäre Operationen Mengendifferenz (MINUS, WHERE NOT) Je nach Implementierung Join (JOIN, ) 9
10 Iteratortypen und deren Implementation 10
11 Iteratortypen 1. Selektion 2. Matching Join Mengendurchschnitt Mengendifferenz. Gruppierung Duplikate Aggregation 4. Projektion (Vereinigung) 5. Zwischenspeicher Sortierung, Hashing, B-Baum 11
12 Selektion (Brute Force) Select σ[p] open next close cost size open: Öffne Eingabe (open bei Vorgänger) next: Hole Tupel von Vorgänger (wiederholt next aufrufen) bis ein Tupel die Bedingung P erfüllt oder der Vorgänger keine Tupel mehr liefert. Gib dieses Tupel zurück (wenn vorhanden) close: Schließe Eingabe (close bei Vorgänger) 12
13 Selektion mit Index (z.b. B-Baum) IndexSelect σ[p] open next close cost size open: Öffne Eingabe Schlage in Index erste Stelle nach, die P erfüllt next: Gib nächstes Tupel zurück sofern P noch erfüllt ist close: Schließe Eingabe 1
14 Matching: Join, Schnitt & Differenz Studenten MatrNr Name 209 Adam 210 Berta 211 Claus 212 Dora hoeren MatrNr VorlNr Studenten hoeren MatrNr Name VorlNr 209 Adam Adam Claus Dora 5022 Mengenschnitt und -differenz: Analog zu Join, mit Vergleich über alle Attribute der Tupel 14
15 Join: Brute-Force-Ansatz Nested loop brute force -Algorithmus Input: Relationen R, S mit Attributen R.B und S.A Output: Relation Ret = R A=B S Äußere Relation / Schleife Ret = {} foreach r R Innere Relation / Schleife foreach s S if s.b == r.a then Ret = Ret ( r s) Hinweis: r s ist Verbund von r und s Bei Mengendifferenz R \ S muss R immer die Äußere Relation sein 15
16 Join: Nested Loop (Brute Force) NestedLoopJoin A=B open next close cost size open: Öffne linke Eingabe und hole erstes linkes Tupel r next: Öffne rechte Eingabe falls noch geschlossen Hole rechtes Tupel s bis r.a = s.b erfüllt ist Falls rechts keine Tupel mehr liefert: Schließe rechte Eingabe Hole nächstes linkes Tupel r Starte next von vorne (für diesen Operator) Gib Verbund r s zurück close: Schließe beide Eingaben Zwei Vorgänger 16
17 Join: Blocked Nested Loop Eingaben Seitenweise laden Kapazität des Hauptspeichers ausnutzen Platz für m Seiten Block Nested Loop Verfeinerter brute force -Algorithmus Lade (m k) Seiten der äußeren Relation (R) Lade k Seiten der inneren Relation (S) Vergleiche die Tupel in den Seiten im Hauptspeicher Optimale Parameterwahl: k = max(1, m R ) Ideal wenn R < m, d.h. wenn R komplett in den Hauptspeicher passt Als äußere Relation die kleinere Relation wählen: R < S Innere Relation abwechselnd rückwärts durchlaufen spart einige Seitenzugriffe ( R und S sind Anzahl der Seiten in jeder Relation. )
18 Join: Blocked Nested Loop R m k m k m k m k m k S k k k k k k k k Anzahl Zugriffe auf Plattenspeicher = O( R + S R / (m k)) 18
19 Join: Merge Join Voraussetzung: Eingaben sind beide nach Joinattribut sortiert (z.b. B-Baum) Falls A oder B eindeutiges Attribut ist, wird jedes Tupel in R und S nur genau einmal gelesen Implementation: zwei Iteratoren ( ) C R A B S D
20 Join: Index Join Voraussetzung: Mindestens eine der Eingaben hat einen Index 20
21 Join: Index Join IndexJoin A=B open next close cost size Index auf rechte Eingabe open: Öffne linke Eingabe und hole erstes linkes Tupel Öffne rechte Eingabe next: Hole nächstes passendes Tupel aus rechter Eingabe Falls rechts kein passendes Tupel mehr Hole nächstes Tupel von links und schlage rechts nach State next von vorne (in diesem Operator) Gib Verbund von linken und rechtem Tupel zurück close: Schließe beide Eingaben 21
22 Join: Hash Join Idee: Daten so partitionieren, dass die Hashtabelle in den Hauptspeicher (m Seiten) passt Partitionierung: Definiert über kleinere Relation (build input) Hashfunktion zur Abbildung auf (m 1) Partitionen Je eine Seite pro Partition Speicherung der Partitionen Bei Überlauf Rekursion (Partitionierung der Partitionen mit orthogonaler Hashfunktion) Partitionierung der größeren Relation (probe input) Berechnung des Verbunds: Laden von (m 1) Seiten aus den build-partitionen Seitenweises Durchlaufen der probe-partitionen 22
23 Join: Hash-Join Anschaulich: Einschränkung des Suchraumes beim Nested-Loop ABER: Pipeline-Breaker 2
24 Join: Hash Join R R S S mod mod
25 Gruppierung Analogie zum Join: Relation mit sich selbst vergleichen Duplikaten-Entfernung wichtig wegen Mengensemantik: Brute force (Nested Loop) NestedDup Vorhandene Sortierung kann ausgenutzt werden SortedDup Index: In B-Baum liegen die gleichen Werte direkt hintereinander Hash-Index: gleicher Bucket IndexDup Allgemein: Ähnliches Vorgehen wie Hash-Join oder künstlich Sortierung einfügen 25
26 Projektion Project π[a] open next close cost size open: Öffne Eingabe next: Hole Tupel von Vorgänger und reduziere die Attributmenge auf A Gib tupel zurück close: Schließe Eingabe 26
27 Zwischenspeicher Puffer Ablegen im Hintergrundspeicher Sinnvoll, wenn Zwischenergebnisse mehrfach benötigt werden (z.b. Nested-Loop-Join) Puffer mit Index B-Baum und Varianten Hash-Index Gesonderte Funktion Sortieren (i.a. nicht im Hauptspeicher möglich) Für die Ausgabe Als Vorbereitung für effizientere Operatoren Nested-Loop: O(NM) Sortieren: O(N log N + M log M), dann Merge-Join O(N + M) 27
28 Illustration: Externes Sortieren
29 Illustration: Externes Sortieren sort 29
30 Illustration: Externes Sortieren
31 Illustration: Externes Sortieren sort
32 Illustration: Externes Sortieren
33 Illustration: Externes Sortieren sort
34 Illustration: Externes Sortieren merge
35 Illustration: Externes Sortieren 2 merge
36 Illustration: Externes Sortieren 2 merge
37 Illustration: Externes Sortieren 2 5 merge
38 Illustration: Externes Sortieren merge
39 Illustration: Externes Sortieren merge
40 Illustration: Externes Sortieren merge
41 Illustration: Externes Sortieren merge
42 Illustration: Externes Sortieren mit B-Baum B-Baum
43 Mehrstufiges Sortieren + Merge Wenn beim Zerlegen mehr Stücke entstehen als im Hauptspeicher Platz für Seiten ist Iteratives Zusammenlegen von Stücken Level 0 m Level 1 m Level 2 4
44 Übersetzung der logischen Algebra 44
45 Übersetzung der logischen Algebra: Join NestedLoop R.A=S.B MergeJoin R.A=S.B R [Bucket] [SortR.A] [SortS.B] S A=B R S IndexJoin R.A=S.B R S R [Hash S.B Tree S.B] HashJoin R.A=S.B S R S 45
46 Übersetzung der logischen Algebra: Selektion IndexSelect P R σ P Select P R R 46
47 Übersetzung der logischen Algebra [IndexDup] [Hash Tree] π A [SortDup] Project A R [NestedDup] R [Sort] Project A R Project A R 47
48 Wiederholung der Optimierungsphasen SELECT DISTINCT s.semester FROM Studenten s, hören h, Vorlesungen v, Professoren p WHERE p.name = 'Einstein' AND v.gelesenvon = p.persnr AND v.vorlnr = h.vorlnr AND h.matrnr = s.matrnr π semester σ name = 'Einstein' p v s h 48
49 s s h v h v 49
50 Zusammenfassung Physische Optimierung Auswahl konkreter Operatorimplementierungen für den Operatorbaum Vielzahl an physischer Imlentierungen der logischen Operatoren Iteratorkonzept verringert die Notwendigkeit Zwischenergebnisse zu speichern Ergebnis: Operatorbaum mit konkreten Implementierungen Abhängig von physischer Umsetzung 50
51 Fragen? 51
Anfrageoptimierung Physische Optimierung
Institute for Web Science & Technologies WeST Grundlagen der Datenbanken Physische Optimierung Dr. Thomas Gottron Wintersemester 01/1 Ziel der phyischen Optimierung Konkrete Implementation der Operatoren
MehrAnfragebearbeitung 2. Vorlesung Datenbanksysteme vom
Vorlesung Datenbanksysteme vom 21.11.2016 Anfragebearbeitung 2 Architektur eines DBMS Logische Optimierung Physische Optimierung Kostenmodelle + Tuning Physische Optimierung Iterator: einheitliche Schnittstelle
MehrAnfragebearbeitung. Logische Optimierung Physische Optimierung (Kostenmodelle Tuning ) Kapitel 8 1
Anfragebearbeitung Logische Optimierung Physische Optimierung (Kostenmodelle Tuning ) Kapitel 8 1 Ablauf der Anfrageoptimierung Deklarative Anfrage (SQL) Scanner Parser Sichtenauflösung Algebraischer Ausdruck
MehrAnfrageoptimierung Kostenmodelle
Web Science & Technologies University of Koblenz Landau, Germany Grundlagen der Datenbanken Anfrageoptimierung Kostenmodelle Dr. Jérôme Kunegis Wintersemester 2013/14 Regel vs. Kostenbasierte Optimierung
Mehr[W, T4, D, 15] [start_transaction, T3] [W, T3, C, 30] [W, T4, A, 20] [commit, T4] [W, T2, D, 25] System Crash
Übungen Aufgabe 1 Geben ist die folgende Logdatei: [start_transaction, T1] [W, T1, D, 20] [commit, T1] [checkpoint] [start_transaction, T2] [W, T2, B, 12] [start_transaction, T4] [W, T4, D, 15] [start_transaction,
MehrAnfrageoptimierung Logische Optimierung
Institute for Web Science & Technologies WeST Grundlagen der Datenbanken Logische Optimierung Dr. Thomas Gottron Wintersemester 2012/13 Ablauf der Deklarative Anfrage Scanner Parser Sichtenauflösung Algebraischer
MehrAnfragebearbeitung. Kapitel 7. Anfragebearbeitung 285 / 520
Kapitel 7 Anfragebearbeitung 285 / 520 Übersicht Anfrage Übersetzer Ausführungsplan Laufzeitsystem Ergebnis 286 / 520 Übersetzung Übersetzung SQL ist deklarativ, irgendwann muß Anfrage aber für Laufzeitsystem
MehrDatenbanksysteme I Anfragebearbeitung und -optimierung Felix Naumann
Datenbanksysteme I Anfragebearbeitung und -optimierung 9.1.2008 Felix Naumann Anfragebearbeitung Grundproblem 2 Anfragen sind deklarativ. SQL, Relationale Algebra Anfragen müssen in ausführbare (prozedurale)
MehrAnfrageoptimierung Kostenabschätzung
Institute for Web Science & Technologies WeST Grundlagen der Datenbanken Kostenabschätzung Dr. Thomas Gottron Wintersemester 2012/13 Regel vs. Kostenbasierte Optimierung Bisher: Regeln, wie Optimierung
MehrÜbung 4. Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017)
Übung 4 Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017) Dennis Fischer dennis.fischer@tum.de http://home.in.tum.de/~fischerd/ Technische Universität München Fakultät für Informatik
MehrKapitel 8 Anfragebearbeitung. Logische Optimierung Physische Optimierung Kostenmodelle Tuning
Kapitel 8 Anfragebearbeitung Logische Optimierung Physische Optimierung Kostenmodelle Tuning Ablauf der Anfrageoptimierung Deklarative Anfrage Scanner Parser Sichtenauflösung Algebraischer Ausdruck Anfrage-
MehrKapitel 8 Anfragebearbeitung
Kapitel 8 Anfragebearbeitung Das Bild kann nicht angezeigt werden. Dieser Computer verfügt möglicherweise über zu wenig Arbeitsspeicher, um das Bild zu öffnen, oder das Bild ist beschädigt. Starten Sie
MehrKapitel 8 Anfragebearbeitung. Logische Optimierung Physische Optimierung Kostenmodelle Tuning
Kapitel 8 Anfragebearbeitung Logische Optimierung Physische Optimierung Kostenmodelle Tuning Ablauf der Anfrageoptimierung Deklarative Anfrage Scanner Parser Sichtenauflösung Algebraischer Ausdruck Auswertungs-
Mehr6. Anfragebearbeitung
6. Anfragebearbeitung 6.1 Einleitung 6.2 Indexstrukturen 6.3 Grundlagen der Anfrageoptimierung 6.4 Logische Anfrageoptimierung 6.5 Kostenmodellbasierte Anfrageoptimierung 55 Fokus: Effiziente Berecnung
MehrFortsetzung: Projektion Selektion. NULL Werte
Fortsetzung: Anfragen mit SQL Bisher: Projektion Selektion Duplikatbehandlung NULL Werte Professoren PersNr Name Rang Raum 2125 Sokrates 226 2126 Russel 232 2127 Kopernikus C3 310 2133 Popper C3 52 2134
MehrWeb Science & Technologies University of Koblenz Landau, Germany. Grundlagen der Datenbanken. SQL Teil 2. Dr. Jérôme Kunegis Wintersemester 2013/14
Web Science & Technologies University of Koblenz Landau, Germany Grundlagen der Datenbanken SQL Teil 2 Dr. Jérôme Kunegis Wintersemester 2013/14 Bereichsanfragen und Mitgliedschaft in der Menge Anfrage:
MehrKostenmodelle und Tuning. Anfragebearbeitung 3. Kostenmodelle. Kostenbasierte Optimierung. VL Datenbanksysteme
Kostenmodelle und Tuning Anfragebearbeitung 3 VL Datenbanksysteme Ingo Feinerer Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Grundidee
MehrAnfragebearbeitung. Anfrage. Übersetzer. Ausführungsplan. Laufzeitsystem. Ergebnis
Anfragebearbeitung Anfrage Übersetzer Ausführungsplan Laufzeitsystem Ergebnis Übersetzung SQL ist deklarativ, Übersetzung für Laufzeitsystem in etwas prozedurales DBMS übersetzt SQL in eine interne Darstellung
MehrAufgabe 1: Verschachtelte Anfragen
Aufgabe 1: Verschachtelte Anfragen (1 P.) (a) Betrachten Sie folgenden Ausschnitt des TPC-H Schemas: CREATE TABLE partsupp ( ps_ availqty INT, ps_ partkey INT ); CREATE TABLE lineitem ( l_ partkey INT,
MehrDatenbanksysteme I Anfragebearbeitung und -optimierung Felix Naumann
Datenbanksysteme I Anfragebearbeitung und -optimierung 22.6.2009 Felix Naumann Anfragebearbeitung Grundproblem 2 Anfragen sind deklarativ. SQL, Relationale Algebra Anfragen müssen in ausführbare (prozedurale)
MehrWS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #4. SQL (Teil 2)
Vorlesung #4 SQL (Teil 2) Fahrplan Eine weitere Aggregation: median Geschachtelte Anfragen in SQL Korrelierte vs. Unkorrelierte Anfragen Entschachtelung der Anfragen Operationen der Mengenlehre Spezielle
MehrÜbung Datenbanksysteme II Anfrageausführung
Übung Datenbanksysteme II Anfrageausführung Leon Bornemann Folien basierend auf Maximilian Jenders, Thorsten Papenbrock Einleitung: Themen 2 Iterator-Operatoren Algorithmen-Klassen Sort-basierte Hash-basierte
MehrInformatik II Vorlesung am D-BAUG der ETH Zürich. Vorlesung 12, 2017 Datenbanksysteme: Datendefinition in SQL, Kompliziertere Datenbankabfragen
Informatik II Vorlesung am D-BAUG der ETH Zürich Vorlesung 12, 2017 Datenbanksysteme: Datendefinition in SQL, Kompliziertere Datenbankabfragen Datendefinition (DDL) in SQL Anlegen einer Tabelle create
MehrKapitel 8 Anfragebearbeitung. Logische Optimierung Physische Optimierung Kostenmodelle Tuning
Kapitel 8 Anfragebearbeitung Logische Optimierung Physische Optimierung Kostenmodelle Tuning Ablauf der Anfrageoptimierung Deklarative Anfrage Scanner Parser Sichtenauflösung Algebraischer Ausdruck AnfrageOptimierer
MehrInformatik II Vorlesung am D-BAUG der ETH Zürich. Vorlesung 12, Datenbanksysteme: Datendefinition in SQL, Kompliziertere Datenbankabfragen
Informatik II Vorlesung am D-BAUG der ETH Zürich Vorlesung 12, 30.5.2016 Datenbanksysteme: Datendefinition in SQL, Kompliziertere Datenbankabfragen Datendefinition (DDL) in SQL Datentypen character (n),
MehrUniversität Augsburg, Institut für Informatik WS 2008/2009 Prof. Dr. W. Kießling 23. Nov Dr. A. Huhn, M. Endres, T. Preisinger Lösungsblatt 5
Universität Augsburg, Institut für Informatik WS 2008/2009 Prof. Dr. W. Kießling 23. Nov. 2007 Dr. A. Huhn, M. Endres, T. Preisinger Lösungsblatt 5 Aufgabe 1: SQL-Queries Datenbanksysteme I a) Geben Sie
MehrTU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.
TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof Alfons Kemper, PhD Blatt Nr 2 Übung zur Vorlesung Grundlagen: Datenbanken im WS5/6 Harald Lang, Linnea Passing (gdb@intumde) http://www-dbintumde/teaching/ws56/grundlagen/
MehrJoins / Implementierung von Joins
Join wichtigste Operation, insbesondere in relationalen DBS: komplexe Benutzeranfragen (Star-Joins) Normalisierung der Relationen (Snowflake-Schema) verschiedene Sichten ( views ) auf die Basisrelationen
MehrRückblick: Relationale Normalisierung
Rückblick: Relationale Normalisierung Gute Relationenschema vermeiden Redundanz und führen nicht zu Anomalien beim Einfügen, Löschen oder Ändern Relationale Normalformen (1NF, 2NF, 3NF, BCNF, 4NF) charakterisieren
MehrAnfrageverarbeitung. Einführung
Anfrageverarbeitung Prof. Dr. T. Kudraß 1 Einführung Wir betrachten die Implementierung der Operatoren der Relationenalgebra: Basis-Operationen: Selektion ( σ ) Auswahl einer Teilmenge von Tupeln aus der
MehrDatenbanksysteme noch Kapitel 7: SQL. Vorlesung vom Oliver Vornberger. Institut für Informatik Universität Osnabrück
Datenbanksysteme 2015 noch Kapitel 7: SQL Vorlesung vom 12.05.2015 Oliver Vornberger Institut für Informatik Universität Osnabrück SQL: Schlüsselworte select from where order by asc desc as like upper
MehrDiskussion: Personal (1)
Diskussion: Personal (1) ER-Diagramm: Abteilung ist beschäftigt in [0, n] [0, 1] Person Umsetzung ins Relationenmodell? Diskussion: Personal (2) Zusätzliche Regel: In jeder Abteilung (Person) muss mindestens
MehrWintersemester 2016/ Matrikelnummer: Hinweise. Unterschrift
Fachbereich für Computerwissenschaften Prof. Dr. Nikolaus Augsten Jakob-Haringer-Str. 2 5020 Salzburg, Austria Telefon: +43 662 8044 6347 E-Mail: nikolaus.augsten@sbg.ac.at Datenbanken II Prüfung Wintersemester
MehrAnfragebearbeitung 3
Anfragebearbeitung 3 VL Datenbanksysteme, WS 2014/5 Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Kostenmodelle und
Mehr5.2.2 Physische Optimierung
Physische Optimierung 5.2.2 Physische Optimierung 2002 Prof. Dr. ainer Manthey Informationssysteme 1 Physische Optimierung: Übersicht "logischer" A-Ausdruck logische Optimierung verbesserter logischer
MehrRückblick: Relationales Modell
Rückblick: Relationales Modell Relationales Modell als vorherrschendes Datenmodell Relationen (Tabellen) besitzen Attribute (Spalten) mit Wertebereichen und beinhalten Tupel (Zeilen) Umsetzung eines konzeptuellen
MehrDatenbanken Vertiefung Wintersemester 2013/ Matrikelnummer: Hinweise. Unterschrift
Fachbereich für Computerwissenschaften Prof. Dr. Nikolaus Augsten Jakob-Haringer-Str. 2 5020 Salzburg, Austria Telefon: +43 662 8044 6347 E-Mail: nikolaus.augsten@sbg.ac.at Datenbanken Vertiefung Prüfung
MehrVorlesung Datenbanksysteme vom
Vorlesung Datenbanksysteme vom 27.10.2008 Wiederholung: Relationale Algebra Relationale Algebra Join-Operatoren Eigenschaften der relationalen Operatoren Grundlagen des relationalen Modells Seien D 1,
Mehr9 Auswertung von Anfrageoperatoren 9.1 Selektion
9. Auswertung von Anfrageoperatoren 9.1. Selektion Seite 1 9 Auswertung von Anfrageoperatoren 9.1 Selektion Auswertung von σ[a op val]r. Index zu A, Sortierung zu A, Operator op. Auswertung von Formeln
MehrWiederholung VU Datenmodellierung
Wiederholung VU Datenmodellierung VL Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester
MehrAufgabe 1 Indexstrukturen
8. Übung zur Vorlesung Datenbanken im Sommersemester 2006 mit Musterlösungen Prof. Dr. Gerd Stumme, Dr. Andreas Hotho, Dipl.-Inform. Christoph Schmitz 25. Juni 2006 Aufgabe 1 Indexstrukturen Zeichnen Sie
MehrÜbung Datenbanksysteme II Anfrageausführung. Thorsten Papenbrock
Übung Datenbanksysteme II Anfrageausführung Thorsten Papenbrock Einleitung: Themen 3 Iterator-Operatoren Algorithmen-Klassen ort-basierte Hash-basierte Index-basierte Algorithmen-chwierigkeitsgrade One-Pass-Algorithmen
MehrKapitel 5 Dr. Jérôme Kunegis. SQL: Grundlagen. WeST Institut für Web Science & Technologien
Kapitel 5 Dr. Jérôme Kunegis SQL: Grundlagen WeST Institut für Web Science & Technologien Lernziele Kenntnis der Grundkonzepte von SQL Fähigkeit zur praktischen Anwendung von einfachen SQL-Anweisungen
MehrAnfrageoptimierung. Datenbankpuffer
Anfrageoptimierung Java : Assembler (Faktor 2-10), aber SQL : SQL optimiert (Faktor 1-100 und mehr) - Warum? - Datenbankpuffer - Speicherstrukturen - Logische Anfrageoptimierung - Physische Anfrageoptimierung
MehrWiederholung VU Datenmodellierung
Wiederholung VU Datenmodellierung VU Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester
MehrIMPLEMENTIERUNG VON OPERATIONEN AUF RELATIONEN
Joins 1 Literatur IMPLEMENTIERUNG VON OPERATIONEN AUF RELATIONEN A. Kemper, A. Eickler: Datenbanksysteme Eine Einführung, 8. Auflage Oldenburg Verlag, 2011, ISBN 978-3-486-59834-6 (als E-Book mit dem Übungsbuch
MehrDatenbanksysteme noch Kapitel 7: SQL Vorlesung vom Oliver Vornberger. Institut für Informatik Universität Osnabrück
Datenbanksysteme 2013 noch Kapitel 7: SQL Vorlesung vom 13.05.2013 Oliver Vornberger Institut für Informatik Universität Osnabrück Sprung Transititve Hülle Transitive Hülle 35.) Liste alle Voraussetzungen
MehrRelationale Anfragesprachen
Relationale Anfragesprachen Structured Query Language: SQL Query by Example: QBE Kapitel 1 Übungen Fr 8.0 Uhr Michael Kühn Raum E 11 SQL standardisierte - Datendefinitions (DDL)- - Datenmanipulations (DML)-
MehrIMPLEMENTIERUNG VON OPERATIONEN AUF RELATIONEN
Joins 1 IMPLEMENTIERUNG VON OPERATIONEN AUF RELATIONEN Literatur Priti Mishara, Maragaret H. Eich, Join Processing in Relational Databases, ACM Computing Surveys, Vol. 24, No. 1, March 1992 Goetz Graefe,
MehrRückblick. SQL bietet viele Möglichkeiten zur Anfrageformulierung
Rückblick SQL bietet viele Möglichkeiten zur Anfrageformulierung mathematische Funktionen (z.b. ABS(A) und SIGN(A)) Aggregatfunktionen (z.b. MIN(A) und SUM(A)) Boole sche Operatoren (AND, OR, EXCEPT) Verknüpfungen
MehrGrundlagen des relationalen Modells
Historische Entwicklung relationaler DBMS Grundlagen des relationalen Modells Seien D 1, D 2,..., D n Domänen (~Wertebereiche) Relation: R D 1 x... x D n Bsp.: Telefonbuch string x string x integer Tupel:
MehrDatenbanksysteme Vorlesung vom noch Kapitel 7: SQL. Oliver Vornberger. Institut für Informatik Universität Osnabrück
Datenbanksysteme 2009 Vorlesung vom 19.05.2009 noch Kapitel 7: SQL Oliver Vornberger Institut für Informatik Universität Osnabrück SQL: Self Join 15.) Liste die Namen der Assistenten, die für denselben
MehrAlgorithmen für Sortierung und relationale Operatoren
Algorithmen für Sortierung und relationale Operatoren In diesem Kapitel betrachten wir folgende Themen: 1. Relationale Operatoren und Sortieroperator 2. Grundlegende Operationen: Tabellen-Scan, Index-Scan,
MehrWiederholung: Relationale Algebra
Vorlesung Datenbanksysteme vom 7.10.01 Wiederholung: Relationale Algebra Relationale Algebra Join-Operatoren Eigenschaften der relationalen Operatoren Grundlagen des relationalen Modells Seien D 1, D,,
MehrDatenbankoptimierung
Datenbankoptimierung Lehrveranstaltung Datenbanktechnologien Prof. Dr. Ingo Claßen Prof. Dr. Martin Kempa Hochschule für Technik und Wirtschaft Berlin Hardware c Ingo Claßen, Martin Kempa Architektur:
MehrKapitel 8 Dr. Jérôme Kunegis. SQL Continued. WeST Institute for Web Science & Technologies
Kapitel 8 Dr. Jérôme Kunegis SQL Continued WeST Institute for Web Science & Technologies Lernziele Syntax von SQL Anfragen Erweiterte Konstrukte in SQL Abfragen: Aggregation, Gruppierung, rekursive Anfragen..
Mehr(4 Punkte) Aufgabe 1: Relationenalgebra - Relationenkalkül
Musterlösunq zur Klausur 1665 Datenbanksvsteme 19.03.2005 Aufgabe 1: Relationenalgebra - Relationenkalkül (4 Punkte) In der Relationenalgebra werden die gewünschten Relationen durch Angabe einer Folge
MehrDatenbanken Vertiefung Wintersemester 2014/ Matrikelnummer: Hinweise. Unterschrift
Fachbereich für Computerwissenschaften Prof. Dr. Nikolaus Augsten Jakob-Haringer-Str. 2 5020 Salzburg, Austria Telefon: +43 662 8044 6347 E-Mail: nikolaus.augsten@sbg.ac.at Datenbanken II Prüfung Datenbanken
MehrRückblick: Datenorganisation & Indexstrukturen
Rückblick: Datenorganisation & Indexstrukturen Datenorganisation der Tupel einer Relation als Haufen, sequenzielle Datei oder indexsequenzielle Datei Indexstrukturen zum effizienteren Zugriff auf Datensätze
MehrWS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #3. SQL (Teil 1)
Vorlesung #3 SQL (Teil 1) Fahrplan Wiederholung/Zusammenfassung Relationales Modell Relationale Algebra Relationenkalkül Geschichte der Sprache SQL SQL DDL (CREATE TABLE...) SQL DML (INSERT, UPDATE, DELETE)
Mehr7.3 Baum-Indexstrukturen
7. Physischer Datenbankentwurf 7.3. Baum-Indexstrukturen Seite 1 7.3 Baum-Indexstrukturen B-Baum der Ordnung (m, l); m > 2, l > 1. Die Wurzel ist entweder ein Blatt oder hat mindestens zwei direkte Nachfolger.
MehrEntity Relationship Modell
Entity Relationship Modell 2 Entity/Relationship (ER) Modell Legi Name Semester Entity = Gegenstandstyp Relationship = Beziehungstyp Schlüssel (Identifikation) Studenten hören Hörer Kurs Vorlesungen Attribut
MehrDatenbanksysteme noch Kapitel 7: SQL Vorlesung vom Oliver Vornberger. Institut für Informatik Universität Osnabrück
Datenbanksysteme 2013 noch Kapitel 7: SQL Vorlesung vom 7.5.2013 Oliver Vornberger Institut für Informatik Universität Osnabrück Sprung Transititve Hülle SQL: avg, group by 16.) Liste die durchschnittliche
MehrTU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.
TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 04 Übung zur Vorlesung Grundlagen: Datenbanken im W16/17 Harald Lang, Linnea Passing (gdb@in.tum.de)
MehrDatenbanken 2. Anfragebearbeitung. Nikolaus Augsten. FB Computerwissenschaften Universität Salzburg. Version 1.
Datenbanken 2 Anfragebearbeitung Nikolaus Augsten nikolaus.augsten@sbg.ac.at FB Computerwissenschaften Universität Salzburg Version 1. Juni 2017 Wintersemester 2017/18 Augsten (Univ. Salzburg) DB2 Anfragebearbeitung
MehrEinordnung. 6. Basisalgorithmen für DB-Operationen. Datenbankparameter. Datenbankparameter (II)
6. Basisalgorithmen für DB-Operationen Datenbankparameter Komplexität von Grundalgorithmen Unäre Operationen (Scan, Selektion, Projektion) Binäre Operationen: Mengenoperationen Berechnung von Verbunden
MehrGrundlagen: Datenbanken
Grundlagen: Datenbanken 3. Zentralübung / Fragestunde Linnea Passing Harald Lang gdb@in.tum.de Diese Folien finden Sie online. Die Mitschrift stellen wir im Anschluss online. Agenda Hinweise zur Klausur
MehrRelationale Algebra. Thomas Heimrich. Rel. Algebra. Grundlagen. Beispielrelationen. rel. Algebra. Definition der rel. Algebra.
1 / 17 Rel. Relationale Thomas Heimrich rel. Formale Sprachen Rel. relationale Die relationale ist prozedural orientiert. Sie beinhaltet implizit einen Abarbeitungsplan für die Anfrage. Die rel. ist wichtig
MehrDATENBANKSYSTEME: SQL
Datendefinitions-, Manipulations- und Anfrage-Sprache SQL, Datendefinition, Veränderung am Datenbestand, Einfache SQL Abfrage, Anfragen über mehrere Relationen, Mengenfunktionen, Aggregatfunktion und Gruppierung,
MehrÜbung 3. Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017)
Übung 3 Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017) Dennis Fischer dennis.fischer@tum.de http://home.in.tum.de/~fischerd/ Technische Universität München Fakultät für Informatik
MehrLogische Optimierung. Im Allgemeinen wird keine optimale Lösung erzielt, sondern nur eine Verbesserung. Logische Optimierung
Logische Optimierung Höhere, nichtprozedurale Abfragesprachen (SQL, QBE,...) verlangen keine Kenntnisse des Benutzers über die Implementierung, müssen aber in prozedurale Form (z. B. Relationenalgebra)
MehrInhalt. Datenbanken 2. Literatur und Quellen. Inhalt. Anfragebearbeitung. Nikolaus Augsten. Wintersemester 2017/18
Inhalt Datenbanken 2 Anfragebearbeitung 1 Einführung Nikolaus Augsten 2 Anfragekosten anschätzen nikolausaugsten@sbgacat FB Computerwissenschaften Universität Salzburg Version 1 Juni 2017 Wintersemester
MehrInhalt. Datenbanken Vertiefung. Literatur und Quellen. Inhalt. Anfragebearbeitung. Nikolaus Augsten. Wintersemester 2013/14
Inhalt Datenbanken Vertiefung Anfragebearbeitung Nikolaus Augsten nikolaus.augsten@sbg.ac.at FB Computerwissenschaften Universität Salzburg 1 Einführung 2 Anfragekosten anschätzen 3 4 Wintersemester 2013/14
Mehr6. Formaler Datenbankentwurf 6.1. Definitionen
6. Formaler Datenbankentwurf 6.1. Definitionen Minimale Überdeckung Eine Menge funktionaler Abhängigkeiten F min ist eine minimale Überdeckung zu F, wenn wir sie durch Anwendung der folgenden Schritte
MehrBitte tragen Sie sofort und leserlich Namen, Studienkennzahl und Matrikelnummer ein und legen Sie Ihren Studentenausweis
Gruppe A Bitte tragen Sie sofort und leserlich Namen, Studienkennzahl und Matrikelnummer ein und legen Sie Ihren Studentenausweis bereit. PRÜFUNG AUS DATENBANKSYSTEME VU 184.686 09. 01. 2015 Kennnr. Matrikelnr.
MehrÜbungsblatt 8 Lösungsvorschläge
Prof. Dr. T. Härder Fachbereich Informatik Arbeitsgruppe Datenbanken und Informationssysteme Universität Kaiserslautern Übungsblatt 8 Lösungsvorschläge für die freiwillige Übung Unterlagen zur Vorlesung:
MehrKapitel 10: Relationale Anfragebearbeitung
Ludwig Maimilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Wintersemester 201/2016 Kapitel 10: Relationale Anfragebearbeitung Vorlesung:
MehrDatenbanksysteme SS 2007
Datenbanksysteme SS 2007 Frank Köster (Oliver Vornberger) Institut für Informatik Universität Osnabrück Kapitel 6b: Das relationale Modell Das Relationale Modell (vgl. Lerneinheit 6a) Wertebereiche (Domänen):
MehrHistorische Entwicklung relationaler DBMS. Ted Codd: A Relational Model of Data for Large Shared Data Banks, Comm. ACM, Juni 1970, S.
Historische Entwicklung relationaler DBMS Ted Codd: A Relational Model of Data for Large Shared Data Banks, Comm. ACM, Juni 1970, S. 377 387 Grundlagen des relationalen Modells Seien D 1, D 2,..., D
MehrDatenbanksysteme 2013
Datenbanksysteme 2013 Kapitel 8: Datenintegrität Vorlesung vom 14.05.2013 Oliver Vornberger Institut für Informatik Universität Osnabrück Datenintegrität Statische Bedingung (jeder Zustand) Dynamische
MehrDatenbanksysteme 2009
Datenbanksysteme 2009 Vorlesung vom 11.05.2009: Anfang von Kapitel 6: Das Relationale Modell Oliver Vornberger Institut für Informatik Universität Osnabrück Das Relationale Modell Wertebereiche (Domänen):
MehrKapitel 8: Datenintegrität
Kapitel 8: Datenintegrität Datenintegrität Statische Bedingung (jeder Zustand) Dynamische Bedingung (bei Zustandsänderung) Bisher: Definition eines Schlüssels 1:N - Beziehung Angabe einer Domäne Jetzt:
MehrDatenbanksysteme SS 2007
Datenbanksysteme SS 2007 Frank Köster (Oliver Vornberger) Institut für Informatik Universität Osnabrück Kapitel 7a: Structured Query Language (SQL) MySQL 5.0 (enthalten in: http://www.apachefriends.org/de/xampp.html)
MehrDatenbanken: Indexe. Motivation und Konzepte
Datenbanken: Indexe Motivation und Konzepte Motivation Warum sind Indexstrukturen überhaupt wünschenswert? Bei Anfrageverarbeitung werden Tupel aller beteiligter Relationen nacheinander in den Hauptspeicher
MehrKommunikation und Datenhaltung
Kommunikation und Datenhaltung Anfrageoptimierung Überblick über den Datenhaltungsteil Einleitung und Grundlagen Architektur von Datenbanksystemen Datenbankanfragen Relationenmodell und Relationenalgebra
MehrDatenbanksysteme I Anfragebearbeitung und -optimierung. 27.6.2011 Felix Naumann
Datenbanksysteme I Anfragebearbeitung und -optimierung 27.6.2011 Felix Naumann Anfragebearbeitung Grundproblem 2 Anfragen sind deklarativ. SQL, Relationale Algebra Anfragen müssen in ausführbare (prozedurale)
MehrGrundlagen des relationalen Modells
Grundlagen des relationalen Modells Seien D 1, D,, D n Domänen (Wertebereiche) Relation: R D 1 x x D n Bsp.: Telefonbuch string x string x integer Tupel: t R Bsp.: t = ( Mickey Mouse, Main Street, 4711)
MehrArchitektur eines DBMS Logische Optimierung
Vorlesung Datenbanksysteme vom 16.11.2015 Anfragebearbeitung 1 Architektur eines DBMS Logische Optimierung Physische Optimierung Kostenmodelle + Tuning Architektur eines DBMS SW-Komponenten der Anfragebearbeitung
MehrSemi-Skylines und Skyline Snippets
Skyline von Manhattan, NY, USA Semi-Skylines und Skyline Snippets Markus Endres Universität Augsburg 10. Februar 2011 Skyline Queries Finde preiswerte Hotels in Strandnähe! Distance to the beach [km] 2.0
Mehr