Turn Head 90º — Column Store Databases

Seminar
Readers
Tom Schreiber

Relationale Datenbanksysteme speichern Daten in Tabellenform. Seit Beginn der relationalen Datenbanktechnologie in den 1970er Jahren waren diese Tabellen gewöhnlich zeilenweise aufgebaut (ein Tupel ≣ eine Tabellenzeile). Mit dieser Tradition brechen die sog. Column Stores, die sämtliche Daten spaltenförmig organisieren. Dieser “Dreh um 90º” hat weitreichende Konsequenzen für die Datenbankarchitektur, bringt aber eine ganze Reihe von wertvollen Vorteilen mit sich. Zum Beispiel

  • können Anfragen in Column Stores die Daten sehr gezielt anfassen, indem nur auf die tatsächlich benötigten Spalten einer Tabelle zugegriffen wird,

  • eröffnet Anfrageverarbeitung in Column Stores Möglichkeiten, Features moderner CPU- und Cache-Architekturen optimal zu nutzen,

  • lassen sich spaltenorganisierte Tabellen äusserst effizient komprimieren, was die Speicherung und Verarbeitung sehr grosser Datenmengen ermöglicht.

Dieses Seminar beleuchtet die teilweise überraschenden Konsequenzen, die sich aus einer spaltenorientierten Sicht der Dinge ergibt. Dazu werden wir neue Forschungsartikel zu diesen Thema heranziehen, können optional aber auch reale Column Stores — etwa MonetDB, Vertica, VectorWise — einbeziehen, um euren Vorträgen ein praktischen Touch zu geben. Einen ersten Überblick über die wesentlichen Grundkonzepte von Column Stores könnt ihr euch mit diesem Tutorial verschaffen.

Themen

Termine und Seminarablauf

Die Vorträge (Länge je ca. 25–30 Minuten, mit anschliessender kurzer Diskussion) werden zu wöchentlichen Seminarterminen stattfinden. Die Lage der Termine legen wir in Absprache mit euch fest: aller Voraussicht nach wird die Anzahl der Teilnehmer es erlauben, einen Termin zu finden, der wirklich in alle Stundenpläne passt. Idealerweise sind wir mit dem Seminarvorträgen bereits vor Februar 2011 durch — das gibt euch ausreichend Zeit für die nachfolgende Erstellung der Ausarbeitung und schafft Freiraum für das ohnehin überfüllte Semesterende.

Es besteht eine (informelle) Anwesenheitspflicht — nicht zuletzt schon aus Fairness gegenüber euren Kommilitonen. Gebt uns ggf. Bescheid, falls ihr zu einem Termin begründet nicht erscheinen könnt.

Hinweise zu den Vorträgen

  • Wichtig: Spätestens ein bis zwei Wochen vor eurem Vortrag solltet ihr einen Termin mit Tom Schreiber ausmachen, um euren kompletten Foliensatz durchzusprechen. Das sich daraus Änderungen an den Folien ergeben, ist die Regel (nicht die Ausnahme). Stellt also bitte sicher, dass ihr euch ein ausreichend grosses Zeitfenster für nötige Änderungen einräumt.

  • Die Länge der eigentlichen Vorträge beträgt jeweils maximal 30 Minuten. Die Erfahrung zeigt, dass in diesem Zeitrahmen nicht mehr als etwa 25 Folien sinnvoll präsentiert werden können. An die Vorträge schließt sich eine kurze offene Diskussion an, die sich auf den Inhalt des Vortrages aber auch auf den Vortrag an sich (Folien, Sprache) beziehen kann.

Ihr findet weitere wertvolle Hinweise zum Aufbau eines Vortrages, zum Layout von Folien und dem Halten des Vortrages selbst, auf den folgenden Seiten:

  1. Simon Peyton-Jones (Microsoft Research, Cambridge): How to give a good research talk
  2. Andreas Zeller (U Saarland): Der perfekte Seminarvortrag

Hinweise zu den Ausarbeitungen

  • Die Ausarbeitung eurer Vorträge erfolgt ausnahmslos in LaTeX. Für eine Einführung in LaTeX könnt ihr euch das Buch “LaTex” von Helmut Kopka aus der Bibliothek ausleihen. Das Buch “The LaTeX companion” von Frank Mittelbach sollte euch ausserdem alle weiterführenden Fragen beantworten. Für Bilder empfehlen wir euch im Weiteren das Paket TikZ zu verwenden.

  • Der Zeitrahmen für die Abgabe der Ausarbeitungen dehnt sich bis zum Ende der Vorlesungszeit aus, also den 04. Februar 2011. Bitte schickt alle Ausarbeitungen im PDF-Format (also nicht die LaTeX-Quellen) per E-Mail an Tom Schreiber.


Link to trello card: Turn Head 90º — Column Store Databases

Labels

Seminar,