Kurs-Beschreibung
Die fortschreitende digitale Transformation in nahezu allen Lebensbereichen führt zu immer grösseren Mengen an Daten. Doch wie können wir solch grosse Datenmengen dauerhaft, konsistent und effizient speichern? Wie strukturieren wir den Datenbestand anhand eines formalen Datenmodells und wie garantieren wir dessen Integrität und Konsistenz? Wie können wir Abfragen in grossen Datenbanksystemen formulieren und wie entwerfen wir Softwaresysteme, die effizient auf grosse Datenbestände zugreifen?
Diese Vorlesung führt grundlegende Datenbanktechniken ein, um den oben genannten Herausforderungen in Speicherung, Management, und Abfrage grosser Datenmengen zu begegnen. Während der Fokus der Vorlesung auf relationalen Datenbanktechnologien liegt, führen wir in einem abschliessenden Teil dokumentbasierte Datenbanktechnologien ein, die häufig in der Analyse heterogener Daten zum Einsatz kommen. Die Vorlesungen werden von wöchentlichen Übungsblättern begleitet, in denen die Studierenden Ihr praktisches Wissen vertiefen und testen können.
Literatur
- Ramez Elmasri and Shamkant B. Navathe, Fundamentals of Database Systems, 7th edition, Pearson Education, 2017
- Abraham Silberschatz, Henry F. Korth, S. Sudarshan, Database System Concepts, 7th Edition, McGraw Hill Education.
Syllabus
- Einführung
- Datenbankarchitektur
- Relationale Algebra
- Relationenkalkül
- SQL – Structured Query Language (1-3)
- Datenbankprogrammierung
- Datenbanknormalisierung
- Entity-Relationship Modell
- ER Inheritance und Indexe
- Concurrency Control Mechanisms