In-Memory-Technologie: Grun... / 2.1 Grundlagen der In-Memory-Technologie

Daten im Hauptspeicher speichern und verwalten

Unter In-Memory-Technologie (auch In-Memory-Computing) versteht man im Allgemeinen das Speichern und Verwalten der Daten im Hauptspeicher. Bei traditionellen Datenbankensystemen werden die Daten ausschließlich auf der Festplatte gespeichert und bei Abfragen von dort gelesen. Dies bedeutet, dass nur ein Bruchteil der Daten im Hauptspeicher verwaltet wird. Mit dem Einsatz der In-Memory-Technologie werden die gesamten Daten entweder direkt im Hauptspeicher gehalten oder beim Pro­grammstart von der Festplatte komplett in den Hauptspeicher geladen. Somit können lesende Zugriffe weitaus schneller erfolgen als bei traditionellen Datenbanksystemen, da keine I/O-Zugriffe (In­put/Output) auf die Festplatte erfolgen.

Die traditionellen relationalen Datenbanken (RDBMS) unterscheiden sich in vielen Aspekten von In-Memory-Lösungen. So verwenden diese Datenbanksysteme eine "Disk" als Datenspeicher. Für eine Datenverarbeitung werden die Daten von der Disk in den Hauptspeicher geladen. Diese Operationen stellen meist einen Engpass im System dar. Aus diesem Grund sind die RDBMS bei der Ana­lyse großer Datenmengen häufig nicht in der Lage, benötigte Abfragen schnell durchzuführen. Die Zugriffslücke zwischen Hauptspeicher und Festplatte ist zwar weggefallen, aber es besteht immer noch eine Barriere zwischen den Prozessoren mit ihrem lokalen CPU-Cache und dem Hauptspeicher (s. Abb. 1). Diese Blockade wird als "Memory Wall" bezeichnet.

Abb. 1: Technische Architektur der RDBMS

Beschleunigung der Datenverarbeitung

Die Verwendung eines großen Hauptspeichers im Rahmen der In-Memory-Technologie bietet gegenüber der Festplatte große Performance-Vorteile hinsichtlich der Zugriffszeiten und Datentransfer. Der Hauptspeicher ist aktuell der schnellste und geeignete Speichertyp, der sehr große Datenmengen halten kann. Daten im Hauptspeicher können ca. 100.000 Mal schneller verarbeitet werden als auf der Festplatte.

Jedoch sind genügend verfügbare Hauptspeicherkapazitäten und die Bereitstellung schneller Prozessoren nicht alleine ausreichend um die Datenverarbeitung so zu beschleunigen, dass Anwender tatsächlich Informationen in Echtzeit erhalten. Um den Datentransfer zu verkürzen, empfiehlt es sich zusätzlich, die Datenbewegung sowohl innerhalb der Datenbank als auch zwischen der Datenbank und der Anwendung durch Nutzung einer spaltenorientierten Speicherung und der Verwendung von Kompressionsmethoden zu minimieren. Weitere Geschwindigkeitsvorteile können durch Techniken wie Parallelisierung und Partition erreicht werden. Diese Aspekte sollen im Folgenden näher untersucht werden.

Das ist nur ein Ausschnitt aus dem Produkt Finance Office Professional. Sie wollen mehr? Dann testen Sie hier live & unverbindlich Finance Office Professional 30 Minuten lang und lesen Sie den gesamten Artikel.


Meistgelesene beiträge