Seminar: Techniques for implementing main memory database systems

Informationen

Inhalt

In this seminar we deal with techniques for implementing main memory database systems.

Vorraussetzungen

  • lecture Fundamentals of Databases (Grundlagen Datenbanken, GDB) or similar course
  • Very good knowledge in data bases, good programming skills in C++

Organisation

  • First organisational meeting for the seminar: Friday, Oct. 16th, 9.00 a.m., room MI 02.11.58 (Spanischer Salon)
  • Presentations start two weeks after the first meting. Be prepared that we will sometimes have two presentations during one meeting. So prepare your topic well in advance.
  • Besides the seminar talk also an implementation of the key aspects of your topicas a component of a main memory database system in C++ has to be done
  • Contact us by email or in person to obtain literature recommendations. For most topics you find papers of our group on our web site that serve as primary source for your seminar.
  • The presentation can be done in English or in German. English is recommended only if you are proficient in English writing and conversation.

Themen und Zuordnung

Alle Themen orientieren sich an der Architektur unseres Hauptspeicher-Datenbanksystems HyPer (hyper-db.de). Auf der Webseite finden Sie auch entsprechende Literaturreferenzen. Viele Themen werden auch im entsprechenden Kapitel meines Lehrbuchs "Datenbanksystem: Eine Einführung" abgehandelt (dort allerdings in knapperer Form als wir es von Ihrer Ausarbeitung erwarten). Weiterhin empfehlen wir die Nutzung der Bibliographie-Datenbank dblp. Kontaktieren Sie uns rechtzeitig (nachdem) Sie sich eingelesen/eingearbeitet haben, um den Aufbau Ihres Prototypen sowie Ihres Vortrags zu besprechen.

  • Freitag, 30.10.2015
    • Multi-Core Rechner / NUMA /Multi-Threaded Parallelization (David Becher)
    • Column-Store / Row-Store / Hybrid Store (Denis Blank)
  • Freitag, 6.11.2015
    • Snapshotting / Schattenspeicher (Entfällt)
    • Kompilation von Anfrageplänen -- versus Interpretation (Entfällt)
  • Freitag, 13.11.2015
    • Synchronisation: Lock-free versus 2PL (Stefan Floeren)
    • Compaction (Stefan Glogger)
  • Freitag, 20.11.2015
    • Indexing: ART (Martin Horrer)
    • parallele Hash-Joins: Radix-Join versus globale HT (Entfällt)
  • Freitag, 27.11.2015
    • Parallelization of a Query Engine (Entfällt)
    • HTM versus Latching (Philip Lenhart)
  • Freitag, 4.12.2015
    • Multi-Version Concurrency Control (Bernhard Radke)

Material

  • Snapshot sample program: link
  • Notes on C++: link