DB 2

Seminar
Readers
Torsten GrustBenjamin DietrichDennis Butterstein

Vorlesung: Mo, 10:15-11:45, Sand6/7, großer Hörsaal (Erster Vorlesungstermin 18. April 2016)

Vorlesung: Di, 14:15-15:45, Sand6/7, großer Hörsaal

Übung: Do, 14:15-15:45, Sand 6/7, großer Hörsaal

Klausur: Mo, 18. Juli 2016, 10:00-12:00, Hörsaal N6 (HSZ Morgenstelle)

Aufbauend auf die Vorlesung Datenbanksysteme I, schaltet diese Vorlesung “auf Röntgenblick” und durchleuchtet die Internas relationaler Datenbanksysteme (RDBMS). 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 konkrete Systeme wie insbesondere PostgreSQL oder auch IBM’s DB2 V9, um die Internas von DBMS auch praktisch erleben/verstehen zu können.

Forum

Im Rahmen von Vorlesung und Übung werden wir zur Organisation, für Fragen, Hinweise und Diskussionen ein Forum verwenden. Die Anmeldung und der regelmäßige Besuch des Forums ist nicht optional, sondern für die Teilnahme an der Veranstaltung erforderlich.

Übung

Zur Veröffentlichung der wöchentlichen Übungsblätter, zur Abgabe Ihrer Lösungen sowie zur Korrekturveröffentlichung, wird das Versionskontrollsystem git eingesetzt. Genaue Hinweise zu dessen Verwendung im Rahmen der Übung gibt die folgende Anleitung zu git in der Übung. Sollten sich darüber hinaus noch Fragen ergeben bitten wir hierzu — wie auch sonst — das Forum zu verwenden.

Die Übungsblätter werden regelmäßig Mittwochs herausgegeben und müssen bis spätestens Mittwoch in der Woche darauf, auf dem in der Anleitung beschriebenen Weg, abgegeben werden.

Klausur und Benotung

Die 90-minütige Klausur zu dieser Vorlesung wird am Montag, den 18. Juli 2016, von 10:00–12:00 Uhr im Hörsaal N6 (HSZ Morgenstelle) stattfinden.

Voraussetzung zur Klausurzulassung ist das Erlangen von mindestens 2/3 der Punkte in der Übung!

Die Modulnote ergibt sich ausschließlich aus der Klausurnote. Durch die Übungen können jedoch Bonuspunkte für die Klausur erlangt werden, wenn mehr als 2/3 der Übungspunkte erzielt wurden. Diese entsprechen — je nach Übungsleistung — bis zu 25% der Klausurpunkte.

Eine Wiederholungsprüfung wird für diejenigen angeboten, die an der Hauptklausur teilgenommen und diese nicht bestanden haben oder dieser entschuldigt fern geblieben sind.

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.

  • Winand, Markus: SQL Performance Explained

    Markus Winand, 2012

    ISBN 978-3950307818

    Kondensiertes Wissen eines Praktikers zum SQL-Tuning mit Hilfe von Indizes.

    Website zum Buch

Software

In Vorlesung und Übung werden die Datenbanksysteme PostgreSQL und IBM DB2 betrachtet. Beide Systeme sind kostenfrei beziehbar.

  • PostgreSQL ist für die meisten Linux-Distributionen bereits als Paket verfügbar. Der Quellcode, weitere Binärdistributionen und Installer für Windows und Mac OS X können auf der PostgreSQL-Website bezogen werden.

  • Eine kostenfreie Version von IBM DB2 ist als IBM DB2 Express-C verfügbar.

Semesterwochenstunden / Leistungspunkte / Hörerkreis

  • 4 SWS Vorlesung + 2 SWS Übung zur Vorlesung
  • 8 LP
  • Für Studierende in Informatik **Bachelor- und Master-**Studiengängen
  • Link zu Campus

Voraussetzungen

Modul Datenbanksysteme (Datenbanksysteme I) oder vergleichbare Vorkenntnisse. (Der Veranstaltung kann grundsätzlich auch ohne den vorherigen Besuch von DB I gut gefolgt werden, allerdings erfordert dies unter Umständen etwas Mehraufwand)