Datenbanksysteme II
Datenbanksysteme II - Implementierung von Datenbanksystemen
Zur Anmeldung für den Kurs bitte eine E-Mail an office-naumann@hpi.de senden! Sie erhalten dann rechtzeitig vor dem Kurs einen Zoom-Link.
Beschreibung
Prof. Dr. Felix Naumann & Leon Bornemann (Übungen)
Datenbanken und Data Engineering bilden die Basis fast aller großen Anwendungen. In dieser Vorlesung lernen wir Datenbanksysteme vornehmlich aus interner Sicht kennen, d.h. wir diskutieren wie Datenbanksysteme intern aufgebaut sind. Zu den grundlegenden Themen zählen die physische Speicherung von Daten auf Disk, Indexstrukturen für den effizienten Zugriff auf die Daten (z.B. B-Bäume), verschiedene Algorithmen für die Operatoren der relationalen Algebra (insbesondere diverse Joinalgorithmen), Anfrageoptimierung (insbesondere die Optimierung der Joinreihenfolge mittels dynamischer Programmierung), und die Fehlererholung eines DBMS nach einem Systemfehler (z.B. Stromausfall). Die Vorlesung schließt mit einem Vorlesungsblock zum Thema Web-scale Data Management.
Die Vorlesung wird von einer Übung begleitet.
Veranstaltungsplan
Die Vorlesung findet im flipped-classroom Modus statt. Studierende sehen pro Woche ca. zwei Vorlesungsvideos an (teletask). Immer mittwochs um 13:30 Uhr treffen wir uns in F-E.06 und zugleich per Zoom, um die Themen nochmals zu besprechen, Ihre Fragen zu beantworten, und aktuelle Entwicklungen zu diskutieren.
Update 23.11.2020: Aufgrund mangelnder Nachfrage finden die Q&A-Sessions nur noch online (Zoom) statt.
Die Folien zur Vorlesung befinden sich im internen Bereich.
Ca. alle zwei Wochen findet eine Übung statt.
Der Veranstaltungsplan befindet sich derzeit in Arbeit:
Literatur
Hector Garcia-Molina, Jeffrey D. Ullman, Jennifer Widom: Database Systems - The Complete Book, Pearson Education International, 2002.
Das Buch steht in ausreichender Zahl in der Bibliothek und mehrfach bei uns am Lehrstuhl. Außerdem bei Amazon (second edition).
Es gibt zudem eine Vielzahl anderer (deutscher und englischer) Lehrbücher zu dem Thema, die allesamt ebenfalls als Studienbegleitung geeignet sind. Empfehlenswert sind zum Beispiel auch
- "Datenbanken: Implementierungstechniken" von Saake, Heuer und Sattler
- "Grundlagen von Datenbanksystemen" von Elmasri und Navathe
- "Database Management Systems" von Ramakrishnan und Gehrke.
Klausur
Die Note wird in einer Klausur ermittelt und die Voraussetzung zur Zulassung zur Klausur ist die erfolgreiche Bearbeitung der Übungsaufgaben.