Nicht-Standard Datenbanksysteme
News
- Die Videos zu den einzelen Vorlesungseinheiten stehen jeweils einen Tag vor dem Vorlesungstermin in Blackboard zur Verfügung.
Allgemeines
Die Anforderungen moderner Systeme an das Datenmanagement entfernen sich zunehmend von den klassischen Annahmen relationaler Datenbanksysteme: Die Hardware hat sich verändert (großer RAM, viele Prozessoren), die Datenformate sind vielfältig und lassen sich schwer in ein starres, relationales Schema zwängen, Web Applikationen mit Tausenden von simultanen Benutzern fordern hohe Belastbarkeit der Systeme, usw. Diese Lehrveranstaltung beschäftigt sich mit Themen aus diesem Bereich die in den letzen Jahren besondere Aktualität erlangt haben, z.B. parallele Datenbanken, verteilte Datenbanken, Hauptspeicherdatenbanken, NOSQL Datenbanken.
Vorlesung
Da in diesem Semester keine Präsenzlehre möglich ist, werden regelmäßig Videos zu den einzelnen Themen online gestellt werden. Es finden keine Vorlesungen über Videokonferenz statt.
- Der Stoff der Vorlesung ist großteils durch Lehrbücher abgedeckt; die entsprechende Literatur wird referenziert.
- Zu den meisten Themen gibt es Folien, die rechtzeitig online gestellt und in den Vorlesungsvideos behandelt werden.
- Vorlesungsvideos mit Erkärungen zu den Folien werden regelmäßig auf Blackboard zur Verfügung gestellt.
- Für Fragen und Diskussionen (auch unter den Studierenden) steht der Slack Channel #nsdb-vo-2021ss zur Verfügung.
Folien
Jeder Satz Folien bildet eine thematische Einheit und wird in einer oder mehreren Vorlesungen behandelt.
Folien, welche noch nicht in der Vorlesung behandelt wurden, können sich noch ändern, liegen jedoch in inhaltlicher finaler Form vor, sobald das entsprechende Video verlinkt ist. Nach der Vorlesung werden nur noch Fehler ausgebessert. Verschiedene Versionen können Sie anhand des Datums auf der Titelseite unterscheiden.
Die Folien und die entsprechnenden Erläuterungen und Diskussionen während der Vorlesung sind Hauptgrundlage für die Vorbereitung auf die Prüfung.
ACHTUNG: Als Hilfestellung werden die Folien in einer Vorabversion zu Beginn des Semesters bereitgestellt. Die finalen Versionen werden zur Verfügung gestellt, wenn das jeweilige Themengebiet in der Vorlesung durchgenommen wird.
Thema | Folien | Handouts | Literatur |
---|---|---|---|
Database System Architectures | [1x1] [2x2] | — | DSC6 17 |
Parallel Databases | [1x1] [2x2] | — | DSC6 18 |
Distributed Databases | [1x1] [2x2] |
2-Phase-Commit
Persistent Messaging Distributed Locking |
DSC6 19 |
Vorlesungsvideos
Videos mit Erkärungen zu den Folien zur Vorlesung werden regelmäßig auf Blackboard zur Verfügung gestellt.
Fragen und Diskussionen
Für Fragen und Diskussionen (auch unter den Studierenden) steht der Slack Channel #nsdb-vo-2021ss zur Verfügung.
Voraussetzungen
- Grundlagen Transaktionen:
- DSC6 14.1–14.2, 14.4–14.6
-
- Concurrency Control:
- 2-Phase Locking (2PL): DSC6 15.1.3
Timestamp-Based Protocols: DSC6 15.4
Deadlocks: DSC6 15.2
Literatur
- DSC6 — Database System Concepts
- Silberschatz, Korth, Sudarshan. Database System Concepts.. McGraw-Hill, 2011, 6th edition.
Multiple copies of the book are available in the textbook collection of the department library (Fachbibliothek Itzling). - DSC7 — Database System Concepts
- Silberschatz, Korth, Sudarshan. Database System Concepts.. McGraw-Hill, 2019, 7th edition.
Prüfung
Der Prüfungsstoff schließt Folien, Handouts, Vorlesungsvideos, sowie die Literatur aus der obigen Tabelle ein.
Die Prüfung zur Vorlesung ist mündlich.
Bewertet werden
- die technische Korrektheit der Antwort,
- der Detailgrad der Antwort, d.h., wie tief-schürfend wurde das Thema behandelt,
- die Vollständigkeit der Antwort, d.h., wurden alle Aspekte berücksichtigt,
- der Gebrauch der passenden Fachterminologie,
- die Fähigkeit, auf vertiefende Fragen einzugehen.
Zur Prüfung können keine Unterlagen verwendet werden.
Die An- und Abmeldung zur Prüfung ist bis 48 Stunden vor dem Prüfungszeitpunkt möglich. Bei Fernbleiben von einer Prüfung ohne Abmeldung erfolgt eine Sperre gemäß den Satzungen der Universität.
Proseminar
Fragen und Diskussionen
Für Fragen und Diskussionen (auch unter den Studierenden) steht der Slack Channel #nsdb-ps-2021ss zur Verfügung.
Abhaltemodus
Im Proseminar wird über das Semester hinweg an einem praktischen Programmier-Projekt gearbeitet. Die Bearbeitung erfolgt in Gruppen zu je 3 Personen. Zu Beginn wählt jede Gruppe ein Datenbanksystem aus und definiert eine passende Applikation. Die Programmiersprache kann frei gewählt werden. Als Datenbanksystem muss ein System gewählt werden, das nicht zu den traditionellen relationalen Datenbanksystemen (wie bspw. PostgreSQL) gezählt wird. Das inkludiert Systeme aus den NoSQL- und NewSQL-Bewegungen sowie verteilte Frameworks für sehr große Datenmengen (bspw. Apache Spark).
Während des Semesters wird es drei Milestones (Meilensteine) geben. Zu Milestones 1 und 2 erstellen die Studierenden einen Bericht (in LaTeX verfasst), der eine Ergebnis-Zusammenfassung des jeweiligen Milestones darstellt. Für jeden Bericht werden die wichtigsten Punkte/Fragen vordefiniert, die zu bearbeiten sind. Am Ende des Semesters präsentiert jede Gruppe ihr fertiges Projekt (Milestone 3) via Video-Konferenz.
Für jeden Milestone werden die Beurteilungskriterien im Voraus festgelegt, siehe auch Bewertung für Details zur Benotung.
Milestone-Übersicht
Max. Punkte | Deadline | |||||
---|---|---|---|---|---|---|
Regulär + Bonus | ||||||
Gruppeneinteilung | 15.03.2021 | |||||
1. | Milestone 1 | 24 + 4 | 31.03.2021, 23:55 | |||
2. | Milestone 2 | 38 + 6 | 17.05.2021, 23:55 | |||
3. | Milestone 3 | 18 | Präsentationen: 07.06., 21.06. | |||
80 + 10 |
Zur Erstellung des Berichts zu Milestone 1 und 2 wird ein Template zur Verfügung gestellt, das verpflichtend zu verwenden ist.
Bericht
Abfassung
Bitte beachten Sie folgende Richtlinien bei der Abfassung des Berichts:- Template: Verwenden Sie das vorgegebene LaTeX-Template für Ihren Bericht.
- Spache: Das Template ist in Englisch verfasst. Es steht jeder Gruppen frei, den Bericht in Englisch (empfohlen) oder Deutsch zu bearbeiten. Die Wahl der Sprache hat keinen Einfluss auf die Bewertung.
Abgabe eines Berichtes
- Die Abgabe erfolgt über Blackboard.
- Abzugeben ist der jeweilige Milestone-Bericht als PDF.
- Verspätete Abgaben werden nicht berücksichtigt.
Milestone 3: Präsentation
Als Abschluss der Lehrveranstaltung (Milestone 3) stellt jede Gruppe ihr Projekt in einer Präsentation mit Live-Demo vor (Video Konferenz).
Die Teilnahme an der Präsentation der eigenen Gruppe ist verpflichtend. Im Rahmen der Präsentation werden vom LV-Leiter Fragen gestellt. Die Präsentation wird bewertet. Nicht alle Teilnehmer der Gruppe erhalten notwendigerweise dieselbe Bewertung.
Es besteht Anwesenheitspflicht.
Termine
- 07.06.2021 13:00-15:00.
- Gruppen 2, 4, 6, 8
- 21.06.2021 13:00-15:00
- Gruppen 1, 3, 5, 7
Ablauf der Präsentation
- Kurze Beschreibung des Anwendungsszenarios, des Setups und der verwendeten Datensätze, sowie der Motivation für die Systemwahl (evtl. Folien verwenden, max. 4 Minuten).
- Live-Demo der Applikation (Screen Sharing, max. 8 Minuten).
- Zeit für Fragen.
Bewertung
Pro Milestone gibt es eine vordefinierte Anzahl an Punkten, die sich aus regulären Punkten und Bonuspunkten zusammensetzt. Für die Gesamtbewertung werden die erreichten Punkte aller Milestones aufsummiert.
Bonuspunkte fließen erst ab einer positiven Punktezahl in die Gesamtbewertung ein, d.h. man kann mit Bonuspunkten eine positive Bewertung verbessern, jedoch nicht positiv werden.
Punkteintervall | Note | |||
---|---|---|---|---|
≥ 70 | ||||
[60 - 69) | ||||
[50 - 59) | ||||
[40 - 49) | ||||
< 40 |
Unterlagen
Um einen schnelleren Überblick über die verfügbaren Nicht-Standard Datenbanksysteme (im Kontext dieser Lehrveranstaltung) zu erhalten, stellen wir eine kurzes Survey als PDF zur Verfügung: Overview on non-standard database systems
Im Folgenden finden Sie eine Liste von vorgeschlagenen Unterlagen, die die Bearbeitung der Milestones erleichtern sollen. Das Studium der Unterlagen ist optional. Die Liste stellt keinen Anspruch auf Vollständigkeit.
Bücher
- 7D7W — Seven Databases in Seven Weeks: A Guide to Modern Databases and the NoSQL Movement
- Redmond and Wilson. Seven Databases in Seven Weeks: A Guide to Modern Databases and the NoSQL Movement. The Pragmatic Bookshelf, 2012.
- ADM — Advanced Data Management
- Wiese. Advanced Data Management. de Gruyter / Oldenbourg, 2015.
- FDB — Fundamentals of Database Systems (7th Edition)
- Kapitel 23, 24 und 25. Elmasri and Navathe. Fundamentals of Database Systems (7th Edition). Pearson, 2016.
Forschungsartikel (Papers)
Empfohlene Papers sind markiert.
- H. Garcia-Molina and K. Salem. Main Memory Database Systems: An Overview, in IEEE TKDE, 1992.
- J. Dean and S. Ghemawat. MapReduce: Simplified Data Processing on Large Clusters, in USENIX OSDI, 2004.
- M. Stonebraker, et al. C-Store: A Column-oriented DBMS, in PVLDB, 2005.
- F. Chang, et al. Bigtable: A Distributed Storage System for Structured Data, in USENIX OSDI, 2006.
- G. DeCandi, et al. Dynamo: Amazon's Highly Available Key-value Store, in ACM SOSP, 2007.
- M. Stonebraker, et al. The End of an Architectural Era (It's Time for a Complete Rewrite), in PVLDB, 2007.
- R. Kallmann, et al. H-Store: A High-Performance, Distributed Main Memory Transaction Processing System, in PVLDB, 2008.
- D. Abadi, et al. Column-Stores vs. Row-Stores: How Different Are They Really?, in ACM SIGMOD, 2008.
- W. Vogels. Blog post on Eventually consistency, in Communications of the ACM, 2009.
- D. Abadi, et al. Column-oriented Database Systems, in PVLDB, 2009.
- M. Stonebraker. Blog post on SQL vs. NoSQL databases, in Communications of the ACM, 2010.
- A. Lakshman and P. Malik. Cassandra: A Decentralized Sturctured Storage System, in ACM SIGOPS Oper. Syst. Rev., 2010.
- R. Cattell. Scalable SQL and NoSQL Data Stores, in ACM SIGMOD, 2010.
- M. Zaharia, et al. Spark: Cluster Computing with Working Sets, in USENIX HotCloud, 2010.
- M. Grund, et al. HYRISE – A Main Memory Hybrid Storage Engine, in PVLDB, 2010.
- M. Stonebraker. Blog post on NewSQL, in Communications of the ACM, 2011.
- A. Kemper and T. Neumann. HyPer: A Hybrid OLTP&OLAP Main Memory Database System Based on Virtual Memory Snapshots, in IEEE ICDE , 2011.
- J. Baker, et al. Megastore: Providing Scalable, Highly Available Storage for Interactive Services, in CIDR, 2011.
- M. Stonebraker. Blog post on NewSQL opportunities, in Communications of the ACM, 2012.
- V. Sikka, et al. Efficient Transaction Processing in SAP Hana Database: The End of a Column Store Myth, in ACM SIGMOD, 2012.
- J. C. Corbett, et al. Spanner: Google's Globally-Distributed Database, in USENIX OSDI, 2012.
- F. Färber, et al. The SAP Hana Database – An Architecture Overview, in IEEE Data Eng. Bull., 2015.
- M. Kleppmann, et al. Kafka, Samza and the Unix Philosophy of Distributed Data, in IEEE Data Eng. Bull., 2015.
- P. Carbone, et al. Apache Flink™: Stream and Batch Processing in a Single Engine, in IEEE Data Eng. Bull., 2015.
- A. Pavlo and M. Aslett. What's Really New with NewSQL?, in ACM SIGMOD, 2016.