Advanced Functional Programming

Lecture
Readers
Torsten GrustManuel Mayr

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.

Übungsblätter

Im Laufe des Semesters werden die Übungsblätter im CIS-System zum Download verfügbar gemacht. Bitte melden Sie sich rechtzeitig an, um möglichst kein Übungsblatt zu verpassen.

Organisatorisches

  • Die Übungen werden wöchentlich abgehalten. Jede Woche werden am Donnerstag neue Übungsblätter im CIS-System veröffentlicht.
  • Für die erfolgreiche Teilnahme an der Übung sind 2/3 der Gesamtpunkte aller Übungsblätter nötig.
  • 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.

Klausur

Die Klausur findet am Dienstag, den 1. Februar 2011 (10:15 Uhr) im Raum A301 statt. Mehr Details dazu dann später hier.

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 Hauptstudium Diplom Informatik, Bioinformatik und Lehramt Informatik
  • Studierende in Informatik Master-Studiengängen

Voraussetzungen

Modul Datenbanksysteme (Datenbanksysteme I) oder vgl. Vorkenntnisse


Link to trello card: Datenbanksysteme II

Labels

Lecture,