Kurzfassung

Der Lehrstuhl für Datenbanken entwickelt seit einiger Zeit das Datenbank-Management System ERIS, dass von Grund auf mit einer Datenorientierten Architektur entworfen wurde. Neben wichtigen Anforderungen wie Skalierbarkeit und Performance fasst das Projekt insbesondere Aspekte wie Energie und Adaptivität ins Auge, um modernen Anforderungen an Datenbanksysteme gerecht zu werden. Insbesondere zielen wir mit ERIS auf eine Scale-Up Hardware, wie sie eine SGI UV 2000 darstellt. Zur Optimierung des Datenhandlings auf einer SGI-Maschine wird das Global Register Unit (GRU) hardwareseitig angeboten. Im Rahmen dieser Diplomarbeit soll dieses Global Register Unit im Detail analysiert werden und ERIS-Kernpunkte identifiziert werden, die durch die Nutzung von GRU optimiert werden können bzw. sollen.

Ausgangssituation

Der Lehrstuhl für Datenbanken entwickelt seit einiger Zeit das Datenbank-Management System ERIS, dass von Grund auf mit einer Datenorientierten Architektur entworfen wurde. Neben wichtigen Anforderungen wie Skalierbarkeit und Performance fasst das Projekt insbesondere Aspekte wie Energie und Adaptivität ins Auge, um modernen Anforderungen an Datenbanksysteme gerecht zu werden. Insbesondere zielen wir mit ERIS auf Scale-Up Hardware, d.h. Hardware mit einer großen Anzahl von Cores und einer hohen Kapazität an Hauptspeicher ab. Ein Beispiel einer solchen Hardware repräsentiert die SGI UV 2000, die aus 512 Cores mit 8TB an Hauptspeicher besteht. Die 512 Cores sind in 4 Rack Units, wobei jede Rack-Unit mit 8 Compute Blades ausgestattet ist. Jedes Compute Blade besitzt 2 Multiprocessoren. Jeder Multiprocessor verfügt über eine 8-Core Intel Xeon CPU mit 128 GB lokalen Hauptspeicher. Die SGI UV 2000 ist damit ein großer NUMA Multiprocessor und unser ERIS-System durch die Datenorientierte Architektur ist dafür bestens geeignet.

Aufgabenstellung

Zur Optimierung des Datenhandlings auf einer SGI-Maschine wird das Global Register Unit (GRU) hardwareseitig angeboten. Im Rahmen dieser Diplomarbeit soll dieses Global Register Unit im Detail analysiert werden und ERIS-Kernpunkte identifiziert werden, die durch die Nutzung von GRU optimiert werden können bzw. sollen. In einem ersten Schritt sind dazu die Eigenschaften und Einsatzgebiete der GRU herauszufinden und diese mit einfachen Programmen zu untermauern. Diese synthetischen und eingeschränkten Experimente sollen das Verständnis der hardwareseitigen Unterstützung stärken. Im Anschluss daran soll die ERIS-Architektur mit Blick auf potentielle Einsatzgebiete der GRU analysiert werden. Sind solche Einsatzgebiete identifiziert, soll eine prototypische Evaluierung den Nutzen aufzeigen. Dazu sind bestimmte Implementierungsarbeiten in ERIS notwendig, die dann auch entsprechend umgesetzt werden müssen.
Folgende Punkte sind also zu erledigen:

  1. Einarbeitung in das Global Register Unit (GRU) von SGI.
  2. Systematische Aufarbeitung der Fähigkeiten von GRU mittels einfacher und grundlegenden Programmen zur Nutzung von GRU. Dazu sind die Testprogramme zu implementieren und einer Evaluierung zu unterziehen.
  3. Einarbeitung in die ERIS-Architektur.
  4. Anwendung der GRU-Erkenntnisse auf die ERIS-Architektur und Verbesserungsvorschläge ausarbeiten
  5. Prototypische Implementierung der Verbesserungsvorschläge und Evaluierung.