Nicht-Standard Datenbanken
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 Daten sind sehr variabel 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:
- Vorlesungstermine (PlusOnline)
- Prüfungstermine werden in PlusOnline bekannt gegeben. 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:
Vorbesprechung am 8. März, 11:00, T04. Die Teilnahme an der Vorbesprechung ist verpflichtend.
- Proseminartermine (PlusOnline)
Vorlesung
Zu manchen Themen gibt es Folien, die rechtzeitig online gestellt werden. Der Stoff der Vorlesung ist großteils durch Lehrbücher abgedeckt; die entsprechende Literatur wird referenziert. Für einige Vorlesungseinheiten wird von den Studierenden erwartet, dass sie vor der Vorlesung die entsprechende Pflichtlektüre lesen; während der Vorlesung wird in diesem Fall eine gewisse Vertrautheit mit dem Thema vorausgesetzt.
Folien
Thema | Datum | Folien | Literatur | Pflichtlektüre | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Database System Architectures | 01.03.2016 | [1x1][2x2] | DSC Ch. 17 | - | ||||||
Parallel Databases | 08.03.2016 | [1x1][2x2] | DSC Ch. 18 | DSC Ch. 18.1–18.5 | ||||||
15.03.2016 | DSC Ch. 18.6–18.9 | |||||||||
05.04.2016 | ||||||||||
Distributed Databases | 12.04.2016 | [1x1][2x2] | DSC Ch. 19, Handout: Persistent Mesg. |
DSC Ch. 19.1–19.4 | ||||||
19.04.2016 | Handout: Distr. Locking | DSC Ch. 19.5 | ||||||||
03.05.2016 | DSC Ch. 19.6 | |||||||||
10.05.2016 | ||||||||||
24.05.2016 | DSC Ch. 19.7–19.10 | |||||||||
Graph Databases | 07.06.2016 | nsdb_01: [1x1][2x2] | ADM Ch. 4 | |||||||
Spatial Databases | 14.06.2016 | nsdb_02 | DSC Ch. 25.3 | |||||||
21.06.2016 | MMDS Ch. 1.4–1.5.1.2 | |||||||||
28.06.2016 | ||||||||||
Literatur
- DSC — 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. - ADM — Advanced Data Management
- Wiese. Advanced Data Management. de Gruyter / Oldenbourg, 2015.
- MMDS — Foundations of Multidimensional and Metric Data Structures
- Samet. Foundations of Multidimensional and Metric Data Structures. Morgan Kaufmann, 2006.
Prüfung
Die Prüfung zur Vorlesung ist mündlich. Der Prüfungsstoff schließt Folien, Literatur und Pflichtlektüre aus der obigen Tabelle sowie ergänzende Stoffinhalte aus der Vorlesung (Mitschrift) ein.
Überblick:
- DSC Ch. 17: Database-System Architectures
- inklusive Practice Exercises Ch. 17
- Handout über Cache Consistency ist nicht Prüfungsstoff.
- DSC Ch. 18: Parallel Databases
- inklusive Practice Exercises Ch. 18 (außer 18.7)
- Load Balancing in MapReduce: siehe ICDE 2012 Slides
- DSC Ch. 19: Distributed Databases
- inklusive Practice Exercises Ch. 19.1, 19.4, 19.5, 19.14, 19.15
- Mitschrift: Persistent Messaging (siehe auch Handout), 2PC, Distributed Locking Protocols (siehe auch Handout), Basic Timestamp Ordering, Lamport Clocks, Vector Clocks, Happend-Before, Bully Algorithm, CAP Theorem (CA, AP, CP applications), JSON vs. XML (sibling order)
- ADM Ch. 4: Graph Databases
- Detailgrad und Auswahl wie in Vorlesung behandelt, siehe auch Slides
- DSC Ch. 25.3, MMDS Ch. 1.4–1.5.1.2: Spatial Databases
- MMDS: quad trees (point and trie), point k-d trees (Detailgrad und Auswahl wie in Vorlesung behandelt)
- R-trees (siehe Mitschrift, Slides)
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
Bitte unbedingt Vorbesprechung besuchen!
Teil 1: Main Memory Datenbanken
Es werden folgende Artikel aus dem Data Engineering Bulletin (Vol. 36, N. 2) diskutiert:
- Oracle TimesTen: An In-Memory Database for Enterprise Applications
- IBM solidDB: In-Memory Database Optimized for Extreme Speed and Availability
- The VoltDB Main Memory DBMS
- High-Performance Transaction Processing in SAP HANA
- The Hekaton Memory-Optimized OLTP Engine
- Processing in the Hybrid OLTP & OLAP Main-Memory Database System HyPer
- Modularity and Scalability in Calvin
Die Diskussion erfolgt nach dem CD-Prinzip, das hier beschrieben ist. Dabei gibt es 3 Fragesteller (questioners), 3 Antworter (answerers) und 1 Schriftführer (note taker).
Bitte Fragen und Notizen bis jeweils Montag 12:00 Uhr (mittags) vor dem nächsten Termin an nikolaus.augsten@sbg.ac.at schicken.
Rolleneinteilung:
Artikel | Datum | Fragesteller | Antworter | Schriftführer | ||||||
---|---|---|---|---|---|---|---|---|---|---|
1 | 15.03.2016 | Hasic, Preishuber, Vikoler | Ampferer, Friedrich, Schwarz | Hütter | ||||||
2 | 05.04.2016 | Friedrich, Hütter, Schwarz | Ampferer, Hasic, Vikoler | Preishuber | ||||||
3 | 12.04.2016 | Ampferer, Preishuber, Schwarz | Friedrich, Hasic, Hütter | Vikoler | ||||||
4 | 19.04.2016 | Ampferer, Friedrich, Schwarz | Hütter, Preishuber, Vikoler | Hasic | ||||||
5 | 03.05.2016 | Hasic, Hütter, Vikoler | Ampferer, Preishuber, Schwarz | Friedrich | ||||||
6 | 10.05.2016 | Ampferer, Hütter, Preishuber | Friedrich, Hasic, Vikoler | Schwarz | ||||||
7 | 24.05.2016 | Friedrich, Hasic, Vikoler | Hütter, Preishuber, Schwarz | Ampferer | ||||||
Teil 2: NoSQL Datenbanksysteme
Folgende NoSQL Datenbanksystems werden in Gruppen (je 2 Personen) behandelt:
- Key-value store: Riak oder Redis
- Column store: HBase
- Document store: MongoDB oder CouchDB
- Graph database: Neo4j
Jede Gruppe wählt eines der Systeme aus, erklärt im Rahmen einer Präsentation die Funktionsweise des Systems (logisches und physisches Modell, Besonderheiten) und stellt das System in einer Live-Demonstration vor.
Ablauf und Bewertung: Die Präsentation inklusive Demo dauert 40 Minuten, für Fragen werden 20 Minuten reserviert. Die Präsentation soll auf die Besonderheiten des vorgestellten Systems eingehen, insbesondere bezüglich der Themen, die in der Vorlesung behandelt wurden. Bewertet wird die Qualität der Präsentation und der Live-Demonstration, sowie das technische Detailverständnis, mit dem die Studierenden das System präsentieren und Fragen beantworten können.
Literatur: Seven Databases in Seven Weeks
Gruppeneinteilung:
Gruppe | Thema | Datum | ||||||
---|---|---|---|---|---|---|---|---|
1 | Hasic, Vikoler | Document store: MongoDB | 31.05.2016, 11:00-12:00 | |||||
2 | Preishuber, Hütter | Key-value store: Riak | 07.06.2016, 11:00-12:00 | |||||
3 | Schwarz, Friedrich | Column store: HBase | 14.06.2016, 11:00-12:00 | |||||
4 | Ampferer | Graph database: Neo4j | fällt aus |
Bewertung
Bewertet werden die Beiträge zur Diskussion (schriftliche Fragen, Antworten, Beteiligung), die Notizen zur Diskussion, sowie die Präsentation des NoSQL Datenbanksystems.