Suchen
Verloren im Labyrinth der IT-Begriffe? Hier finden Sie Definitionen und Basiswissen zu Rechenzentrums-IT und -Infrastruktur.

Festplattenzugriffe obsolet machen Was ist In-Memory-Computing?

| Autor / Redakteur: lic.rer.publ. Ariane Rüdiger / Ulrike Ostler

Die Datenmassen des Digitalzeitalters erfordern neue Auswertungstechniken. Zu den wichtigsten davon gehört das In-Memory-Computing.

Firmen zum Thema

In-Memory-Datenbanken ermöglichen die Analyse großer Datenmengen im Hauptspeicher
In-Memory-Datenbanken ermöglichen die Analyse großer Datenmengen im Hauptspeicher
(Bild: © djama - stock.adobe.com)

In Standard-Datenbankarchitekturen fließen ständig Daten zwischen Arbeitsspeicher und Storage hin und her. Das dauert und hat seine Grenzen. Denn weder haben Festplatten oder SSDs beliebig viele Zugriffspunkte, noch sind diese beliebig breitbandig.

Was also tun? Vor etwa 20 Jahren fing man an, Hauptspeichererweiterungen als Cache bei Datenbankauswertungen zu verwenden. Dort lagern häufig gebrauchte Daten, doch taugt auch dieses Verfahren nur begrenzt. Um die möglichst auszuweiten, wird das Verfahren mit ausgefeilten Algorithmen gekoppelt: Sie helfen zu entscheiden, was für den schnellen Zugriff im Cache bleibt und was zurück zur Festplatte wandert.

Mit den aktuellen gehobenen Ansprüchen an die Geschwindigkeit der Datenanalyse ist allerdings auch die mittels Cache als Interimsspeicher arbeitende Abfrage- und Analysearchitektur überfordert. Denn auch hier lagern wohl kaum je alle zu analysierenden Daten im Arbeitsspeicher. Deshalb gibt es In-Memory-Lösungen.

Schneller mit In-Memory

In Memory bedeutet: Alle zu analysierenden Daten liegen so nah an den rechnenden Einheiten wie irgend möglich, sprich: im Arbeitsspeicher, in memory eben, und nicht etwa auf der Storage. Dass die In-Memory-Technologien einen dringenden Bedarf adressieren, zeigen Marktdaten, die steil nach oben weisen. Gartner prognostiziert beispielsweise dem In-Memory-Markt bis 2022 jährlich 22 Prozent mehr Volumen. Er soll bis dahin eine Kapazität von 13 Milliarden Dollar weltweit erreicht haben.

Der Preis der Geschwindigkeit

Doch auch die Geschwindigkeit hat ihren Preis. Die In-Memory-Technologie bringt neue Nachteile mit sich. Sie lauten Unsicherheit und Ungenauigkeit. Denn normale Memory-Bausteine verlieren ihren Inhalt, sobald man sie abschaltet oder das System abstürzt. Sie sind nicht persistent. Dann sind die Daten weg.

Einen Ausweg bietet teurer nichtflüchtiger RAM. Andere Methoden gegen Datenverluste sind kurz getaktete Snapshots, Snapshots bei jeder Änderung, Protokollierung aller Änderungen, Replikationsverfahren oder Ähnliches.

Ohne Schutzmaßnahmen kann die eingeschränkte Persistenz gerade dann, wenn viel auf Datenbanken geschrieben wird, zu Lücken in der Konsistenz der Daten führen. Dies ist nur dann weniger dramatisch, wenn die Daten ohnehin eine kurze Halbwertzeit haben.

Reichhaltiges Angebot

Inzwischen haben nahezu alle großen Datenbankanbieter auch In-Memory-Systeme im Angebot. Beispielsweise arbeitet auch „SAP HANA“ als In-Memory-Datenbank, „Terrakotta“ von der Software AG, weitere Beispiele sind „Solid DB“ von IBM, „MySQL“, das mit Cluster-Server für eine verteilte In-Memory-DB kommt, „Oracle Times Ten“ und andere. SAP HANA hat zugleich auch die Indexierung der Daten beseitigt und ist spaltenorientiert.

Die Kapazitäten der In-Memory-Technik erreichen heute dank günstigerer Speicher Dimensionen, die noch vor wenigen Jahren vollkommen unvorstellbar waren. Die zu analysierenden Datenmengen können sich durchaus im Terabyte-Rahmen bewegen.

Neben reinen In-Memory-Datenbanken gibt es auch solche, die sowohl den Arbeitsspeicher als auch Storage verwenden. Sie erinnern an die oben erwähnten Cache-Designs. Die Grenzen zwischen den beiden Bereichen verschwimmen also wie so oft in der Informationstechnik.

Hadoop und In-Memory-Datenbanken

Zudem sollte man erklären, in welchem Verhältnis Hadoop und In-Memory-Datenbanken stehen. Beide Begriffe tauchen oft zusammen auf, bezeichnen aber Unterschiedliches.

Hadoop ist ein Framework für die parallele Datenanalyse eines größeren Datenkörpers in mehreren Clustern mit einem speziellen Filesystem (HDFS, Hadoop Filesystem) und dem Verteilungsmechanismus MapReduce. Datenanalyse kann Hadoop selbst nicht, allerdings gibt es eine ganze Reihe von In-Memory-Datenbanken, die von den Hadoop-Fähigkeiten profitieren. Beispielsweise dienen Tools wie „HBase“ und „Cloudera“ als analytische Tools für Echtzeitdaten in Hadoop-Umgebungen. Historische Daten in Hadoop-Systemen kann etwa SAP HANA analysieren.

(ID:46279723)

Über den Autor

lic.rer.publ. Ariane Rüdiger

lic.rer.publ. Ariane Rüdiger

Freie Journalistin, Redaktionsbüro Rüdiger