Datenbanksysteme II

Internas und Implementierung von Datenbanksystemen


Database-Supported
XML Processors

Skalierbares XML Processing dank Datenbanktechnologie


Selected Fun Problems...

Proseminar basierend auf Aufgaben des ACM Programming Contest

Datenbanksysteme II PDF Print

 

Aufbauend auf die Vorlesung Datenbanksysteme I, schaltet diese Vorlesung “auf Röntgenblick” und durchleuchtet die Internas relationaler Datenbanksysteme (DBMS).

Wir versuchen dabei Antworten auf Fragen zu finden wie etwa:

  • Wie kann der Datentransport zwischen Sekundär– und Hauptspeicher organisiert werden, ohne dass das DBMS laufend auf langsame Festplattenzugriffe warten muss?
  • Wie strukturiert, sortiert und manipuliert man Daten von 20 GB Größe, wenn der verfügbare Hauptspeicher nur einen Bruchteil davon fassen kann?
  • Wie orientiert man sich in Datenmengen dieser Größe? Wie übersetzt man Anfragen (SQL) in effiziente "Programme", die Daten dieser Größe durchforsten/filtern/transformieren können?

 

Dabei werden wir die Architektur eines DBMS als Leitfaden nehmen und uns sukzessive von der physischen Ebene (File-Organisation etc.), über Index-Verwaltung zur Anfrageauswertung durcharbeiten.  Dieser Weg ist mit interessanten Algorithmen und Datenstrukturen geradezu gepflastert. Themengebiete: Sekundärspreicherzugriff, Record– und Seiten–Layout, Indexstrukturen (B–Bäume, Hashes), Sortieren auf Sekundärspeichern, Anfrageauswertung, (geschätzte) Anfragekosten, Plangenerierung und –optimierung, Transaktionen (ACID), Logging.

Wann immer sich die Möglichkeit ergibt, richten wir unseren Röntgenstrahl auf Systeme wie IBM's DB2 V9.5 oder PostgreSQL, um die Internas von DBMS auch praktisch erleben/verstehen zu können.

 

Folienskipt

Im Laufe des Semesters wird hier das Folienskript der Vorlesung zum Download verfügbar gemacht (jeweils vor den Vorlesungsterminen — es empfiehlt sich einen Ausdruck der Folien mit in die Vorlesung zu bringen und diese mit Notizen etc. anzureichern). Der Folientext ist in Englisch verfaßt, die Vorlesung selbst wird auf Deutsch gehalten.


Kapitel (Foliensatz in PDF) Komplett? (¼, ½, ¾, +)
1. Introduction +
2. Storage +
3. Indexing +
4. Tree-Structured Indexing +
5. Multi-Dimensional Indexing +
6. Hash-Based Indexing +
7. External Sorting +
8. Evaluation of Relational Operators +
9. Cardinality Estimation +
10. Query Optimization +

Literatur

 

Ramakrishnan, Gehrke

Database Management Systems
(3rd International Edition)

McGraw-Hill, 2003
ISBN 0-07-246563-8

Dieses Buch deckt die meisten Inhalte dieser Vorlesung sehr gut ab (teilweise orientiert sich die Vorlesung direkt an ausgewählten Kapiteln).

Kemper, Eickler

Datenbanksysteme
(6. Auflage)

Oldenbourg Verlag, 2006
3-486-57690-9

Deutsches Standardlehrbuch, das auch Inhalte der Vorlesung Datenbanksysteme I bespricht — die Inhalte dieser Vorlesung gehen teilweise deutlich über das Material des Buches hinaus. Eine hervorragende Quelle für weiterführende Referenzen.

Zeit und Ort

Der Vorlesungstermin am Montag, den 8. Dezember, fällt aus.  Der nächste Termin ist damit Dienstag, der 9. Dezember, 15:15 Uhr, in Sand 6/7 (großer Hörsaal).

 


ZeitOrt
Vorlesung Mo. 13:15-14:45 Sand 6/7 großer Hörsaal
Vorlesung Di. 15:15-16:45
Sand 6/7 großer Hörsaal
Übung Do, 15:15-16:45 Sand 6/7 kleiner Hörsaal


Die Klausur findet am letzten Vorlesungstermin – am Dienstag, den 10.2.2009 um 15:15 Uhr – statt.

Übungsaufgaben

Übungsblätter

Wegen des Ausfalls der Übung am 18.12.2008 wird am Donnerstag, den 08.01.2009 das Übungsblatt 9 nachgeholt.

 

Nr.AusgabeBesprechungÜbungsblatt Zusatzmatierial Lösung
1. 16.10.2008 23.10.2008 Übungsblatt 1
2. 23.10.2008 30.10.2008 Übungsblatt 2
3. 30.10.2008 06.11.2008 Übungsblatt 3
4. 06.11.2008 13.11.2008 Übungsblatt 4
5. 13.11.2008 20.11.2008 Übungsblatt 5
6. 20.11.2008 27.11.2008 Übungsblatt 6
7. 27.11.2008 04.12.2008 Übungsblatt 7 Java-Stub Musterlösung
8. 05.12.2008 11.12.2008 Übungsblatt 8 Musterlösung
9. 11.12.2008 07.01.2008 Übungsblatt 9
10. 08.01.2009 15.01.2009 Übungsblatt 10

 

Organisatorisches

  • Die Übungen werden wöchentlich abgehalten. Jede Woche werden am Donnerstag neue Übungsblätter auf dieser Seite veröffentlicht.
  • Für die erfolgreiche Teilnahme an der Übung sind 2/3 der Gesamtpunkte aller Übungsblätter (ab dem zweiten Blatt) nötig.
  • Die Punkte aus dem ersten Übungsblatt werden als Bonuspunkte angerechnet.
  • Die Übungsblätter dürfen und sollten in Zweier-Gruppen bearbeitet werden.
  • Für die Bearbeitungszeit eines Übungsblattes ist eine Woche vorgesehen. Die Abgabe der Lösung erfolgt bis spätestens vor dem Besprechungstermin des jeweiligen Übungsblattes. Die Lösungen könnt ihr direkt in der Übung oder im Büro B312 bei Manuel Mayr/Jan Rittinger abgeben. Lösungen, die nach der Besprechung des jeweiligen Übungsblattes abgegeben werden, können nicht mehr berücksichtigt werden.
  • Die Abgabe erfolgt in Papierform.

Für die erfolgreiche Teilnahme an der Übung, nach obigen Regeln, werden 2 LP vergeben.

 

Semesterwochenstunden / Leistungspunkte / Hörerkreis

  • 4 SWS Vorlesung
  • 2 SWS Übung zur Vorlesung
  • 8 LP (Modul Pr)
  • Studierende im Grund- und Hauptstudium Diplom Informatik, Bioinformatik und Lehramt Informatik
  • Studierende im Studiengang Informatik Bachelor/Master
  • Studierende im Studiengang Informatik Bachelor/Master

Voraussetzungen

  • Modul Datenbanksysteme oder vgl. Vorkenntnisse

Dozenten

Prof. Dr. Torsten Grust und Manuel Mayr.