Tuning von Datenbanksystemen

Vorlesung:
Proseminar:
Sprache:
Deutsch, Unterlagen in Englisch
Sprechstunde:
auf Anfrage
Semester:
Sommersemester 2019
Course Evaluations:
PlusOnline:

News

Allgemeines

Die Vorlesung wird im Frontalunterricht abgehalten. Die Folien zur Vorlesung werden jeweils vor Beginn der Vorlesung online gestellt. Die Folien sind in Englisch verfasst, der Vortrag ist jedoch auf Deutsch.

Die Bewertung der Vorlesung erfolgt in einer mündlichen Prüfung am Ende des Semesters.

Vorlesungstermine: siehe PlusOnline

Prüfungstermine: werden in PlusOnline bekannt gegeben. Die An- und Abmeldung zur Prüfung ist bis 48 Stunden vor dem Prüfungszeitpunkt möglich. Bei Fernbleiben von einer Prüfung ohne Abmeldung erfolgt eine Sperre gemäß den Satzungen der Universität.

Das Proseminar wird 14-tägig abgehalten. Die Aufgabe werden in Gruppen zu 3 Personen bearbeitet. Die Teams erhalten Projektblätter, welche im Proseminar und zuhause ausgearbeitet werden. Das Ergebnis der jeweiligen Ausarbeitung ist ein Projektbericht.

Die Bewertung des Proseminars basiert auf den Projektberichten und deren Besprechung während des Proseminars.

Proseminartermine: siehe PlusOnline

Vorlesung

Folien

Jeder Satz Folien bildet eine thematische Einheit und wird in einer oder mehreren Vorlesungen behandelt. Folien, welche noch nicht in der Vorlesung behandelt wurden, können sich noch ändern, liegen jedoch spätestens am Vortag der Vorlesung in ihrer finalen, inhaltlichen Form vor. Nach der Vorlesung werden nur noch Fehler ausgebessert.

Die Folien und die entsprechnenden Erläuterungen und Diskussionen während der Vorlesung sind Hauptgrundlage für die Vorbereitung zur Prüfung.

Thema Folien
1. General Introduction: Introduction, Tuning Principles, Course Organization [1up] [4up]
2. Query Tuning: Query Processing, Tuning Examples, Minimizing DISTINCTs, Unnesting Queries [1up] [4up]
3. Index Tuning: Query Types, Index Types, Data Structures, Composite Indexes, Indexes and Joins, Tuning Examples [1up] [4up]
4. Concurrency Tuning: Introduction to Transactions, Lock Tuning, Weaken Isolation Guarantees, Transaction Chopping [1up] [4up]
5. Recovery Tuning: Logging and Recovery, WAL, Log Buffer, Checkpoints [1up] [4up]
6. Hardware Tuning: Tuning the Storage Subsystem [1up] [4up]

Vertiefende Lektüre

Folgendes Buch behandelt den Großteil des Stoffes aus der Vorlesung:

Der restliche Stoff ist von folgendem Buch abgedeckt (in der Fachbibliothek Itzling in mehrfacher Kopie vorhanden):

Prüfung

Die Prüfung zur Vorlesung ist mündlich. Sie erhalten während der Prüfung eine Frage, die zufällig ausgewählt wird. Sie haben 20 Minuten Zeit, die Frage auszuarbeiten und stellen die Antwort in 15 Minuten im Rahmen eines Prüfungsgespräches vor. Während des Prüfungsgespräches werden vertiefende Fragen gestellt um das Verständnis zu prüfen. Nach Bedarf können auch weitere Themen abgefragt werden.

Bewertet werden

Zur Prüfung können keine Unterlagen verwendet werden.

Die Fragen werden vorher nicht bekannt gegeben. Sie sind jedoch grundsätzlich eher weit gefasst und decken zusammengenommen den gesamten Stoff der Vorlesung ab.

Die An- und Abmeldung zur Prüfung ist bis 48 Stunden vor dem Prüfungszeitpunkt möglich. Bei Fernbleiben von einer Prüfung ohne Abmeldung erfolgt eine Sperre gemäß den Satzungen der Universität.

Proseminar

Wir weisen ausdrücklich zu Beginn des Semesters darauf hin, dass am 02.05.2019 und 09.05.2019 KEIN Proseminar stattfindet. Dafür werden am 16.05.2019 und 23.05.2019 zwei PS-Termine hinterinander abgehalten. Wir bitten die Studierenden dies in ihrer Zeitplanung zu berücksichtigen.

Abhaltungsmodus

Das Proseminar besteht in der Ausarbeitung von Projektblättern. Das Ergebnis ist ein Projektbericht (in Latex verfasst) und für manche Aufgabestellungen auch Source-Code. Die Programmiersprache kann prinzipiell frei gewählt werden, allerdings wird auf dem zur Verfügung gestellten Server nur Java und Python unterstützt. Der Projektbericht muss termingerecht abgegeben werden. Verspätete Abgaben werden nicht berücksichtigt.

Die Projektblätter werden in Gruppen zu je 3 Personen bearbeitet. Während des Proseminars, das auf den Abgabetermin folgt, wird das Ergebnis mit dem Leiter der Lehrveranstaltung besprochen und bewertet. Die Bewertung erfolgt pro Person je nach Beitrag zum Gesamtergebnis und muss nicht für alle Mitglieder der Gruppe gleich sein. Nur Gruppenmitglieder die bei der Besprechung anwesend sind erhalten Punkte für das entsprechende Projektblatt. Im Zuge der Besprechung sind auch weiterführende Fragen bezüglich des jeweiligen Projektblattes zu beantworten. Die Antworten zu diesen Fragen fließen ebenfalls in die Bewertung ein.
Beispiel: Kommt in der Beschreibung eines Anfrageplanes ein Bitmap Heap Scan vor, muss auch die prinzipielle Arbeitsweise des Bitmap Heap Scans (in PostgreSQL) von den Studierenden erklärt werden können. Darum wird empfohlen, die PostgreSQL-Dokumentation in der jeweils zutreffenden Version zu studieren. Sollte es Unklarheiten geben, kann jederzeit die LV-Leitung kontaktiert werden (siehe Q&A).

Es gibt insgesamt 7 Projektblätter, die mit je maximal 5 Punkten bewertet werden. Das letzte Projektblatt ist optional und die Bewertung wird entsprechend angepasst (siehe Bewertung).

Terminübersicht

Projektblatt Max. Punkte Deadline Besprechung Downloads Template
0. Vorbesprechung --- --- 07.03.2019 ---
1. Projektblatt 1 5 20.03.2019, 23:55 21.03.2019 DBLP Data, JDBC Example Template 1
2. Projektblatt 2 5 03.04.2019, 23:55 04.04.2019 Template 2
3. Projektblatt 3 5 10.04.2019, 23:55 11.04.2019 Template 3
4. Projektblatt 4 5 15.05.2019, 23:55 16.05.2019 DBLP Data Template 4
5. Projektblatt 5 5 22.05.2019, 23:55 23.05.2019 DBLP Data Template 5
6. Projektblatt 6 5 05.06.2019, 23:55 06.06.2019 Java demo Template 6
7. Projektblatt 7
(freiwillig)
5 26.06.2019, 23:55 27.06.2019 Template 7

Gruppeneinteilung

Gruppe Mitglieder
1 Edelmayer, Feik, Landl, Truppe
2 Bauer, Demirev, Hattinger
3 Linz, Schmitt, Wimmer
4 Fischer, Güssow, Stirbu-Blagut
5 Regirt, Schweitl, Siller
6 Pape, Paulitsch, Vecek
7 Höll, Innerlohinger, Riediger
8 Chalkias, Cheropoulos

Time-Slot-Übersicht

Die Besprechungen finden in Time Slots zu je 15 Minuten statt. Im Folgenden finden Sie für jedes Projektblatt die Startzeiten und Gruppennummer der jeweiligen Time Slots.

Time Slot 16:00 16:16 16:32 16:48 17:04 17:20 17:36 17:52
Projektblatt 1 1 3 4 5 6 7 8 2 (13:30)
Projektblatt 2 3 4 5 6 7 8 1 2 (13:00)
Projektblatt 3 4 5 6 7 8 1 3 2 (13:00)
Projektblatt 4 5 6 7 8 1 3 4 2 (13:00)
Projektblatt 5 6 7 8 1 3 4 5 2 (13:00)
Projektblatt 6 7 8 1 3 4 5 6 2 (13:00)
Projektblatt 7 8 1 3 4 5 6 7 2 (13:00)

Q&A

Es besteht die Möglichkeit Fragen über den Slack-Channel #dbt2019 zu stellen. Dies ist der bevorzugte Weg für die Kommunikation mit dem LV-Leiter bzgl. der Projektblätter außerhalb des Proseminars. Jeder Studierende kann sich für den Channel #dbt2019 anmelden und zur Diskussion beitragen.

Im Channel #dbt2019 wird auch der LV-Leiter aktiv sein um offene Fragen zu beantworten oder Antworten von Studierenden zu bestätigen.

Projektbericht

Bitte beachten Sie folgende Richtlinien bei der Abfassung des Projektberichtes.

Abgeben des Projektberichtes:

Bewertung

Punkte
ohne Aufgabe 7
Punke
mit Aufgabe 7
Note
≥ 26.25 ≥ 30.62
1
≥ 22.5 ≥ 26.25
2
≥ 18.75 ≥ 21.87
3
≥ 15 ≥ 17.5
4
< 15 < 17.5
5