Neues Datenbanksystem
Xing analysiert seine Community in-Memory
Daten im Hardware-Cluster automatisch verteilt
Das zugrunde liegende System besteht aus einzelnen Servern mit jeweils zwei Quadcore-CPUs und 48 GB RAM, die zu einem Cluster zusammengeschlossen werden. In diesem werden die Daten automatisch verteilt, so dass sich bei Berechnungen sämtliche Hardwareressourcen optimal nutzen ließen. Ein Zehntel der Rechner wird dabei als Hot Standby genutzt. Etwa ein Drittel des RAMs wird dediziert von Exasolution verwendet, der Rest steht für das Betriebssystem und Erweiterungen zur Verfügung. Die benötigten Indizes werden automatisch ohne Administratoreingriff erzeugt und gegebenenfalls auch wieder gelöscht.
Die neue Lösung organisiert dabei alle Informationen spaltenorientiert statt auf Zeilenbasis wie bei herkömmlichen Datenbanksystemen. Hieraus ergeben sich verschiedene Vorteile: Da im analytischen Bereich selten alle Attribute einer Tabelle gleichzeitig genutzt werden, reduziert sich der Speicherverbrauch und auch die benötigte Disk-Bandbreite, falls Daten nachgeladen werden müssen. Dank der Uniformität der Daten innerhalb einer Spalte verbessern sich zudem die Kompressionsmöglichkeiten. Die Datenbank wählt jeweils automatisch für jeden Inhalt den günstigsten Algorithmus aus.
Anders als bei konventionellen Systemen ist bei Exasolution zudem die verteilte Datenspeicherung bereits integriert, berichten die Xing-Verantwortlichen. Ein aufwendiges Storage Area Network (SAN) als externe Speicherlösung entfalle damit. Durch die Verwendung von Standardkomponenten komme die Cluster-Hardware Unternehmen meist günstiger als Spezialhardware. Dar-über hinaus setze die Lösung Kompressionsalgorithmen ein, die eine effiziente Hauptspeichernutzung ermöglichten und demzufolge die Systemkosten nachhaltig senkten.
Auf Hauptspeicheralgorithmen abgestimmte Kompression
Die Kompression ist dabei auf die Hauptspeicheralgorithmen abgestimmt, die laut Hersteller weiterhin wahlfrei auf Einzelattribute zugreifen können, ohne dass dafür ganze Blöcke dekomprimiert werden müssten. Der Kompressionsfaktor erreiche damit zwar nicht die Werte von blockbasierten Algorithmen, bei typischen Daten sei eine Reduktion um den Faktor zwei bis vier jedoch durchaus realistisch. Die Datenbank gebe dabei Auskunft über die komprimierte Größe jeder Tabelle sowie den daraus resultierenden Ressourcenverbrauch.
Exasolution ist dem Anbieter zufolge darüber hinaus ein selbstlernendes System, das sich an die Nutzungsgewohnheiten der Anwender anpassen könne. Indizes würden automatisch verwaltet, Daten komprimiert und SQL-Anweisungen vom Query-Optimizer getunt. Xing sei damit in der Lage, die Millionen Queries pro Monat zu verarbeiten, die sich aus den täglichen hochparallelisierten und komplexen Lade- und Transformationsprozessen sowie den interaktiven Nutzerabfragen zusammensetzten.
Die wichtigsten Ressourcen werden bei diesen Prozessen ständig überwacht. Außerdem stellt das System den Anwendern kontinuierlich Informationen über verschiedene Systemtabellen bereit. Bei der wichtigsten Ressource, dem Hauptspeicherausbau, empfiehlt das System, wie sich das aktuelle Nutzungsprofil optimal abdecken lässt. Dass diese Empfehlung keine harte Grenze, sondern tatsächlich ein Optimum darstellt, zeigt sich bei Xing: Laut den IT-Experten ist die Leistung selbst bei nur 50 Prozent des empfohlenen Ausbaus gut.