Datenbanksysteme II

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 oder PostgreSQL, um die Internas von DBMS auch praktisch erleben/verstehen zu können.

Übungsaufgaben

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.

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, ISBN 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.

Semesterwochenstunden / Leistungspunkte / Hörerkreis

  • 4 SWS Vorlesung
  • 2 SWS Übung zur Vorlesung
  • 8 LP
  • 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