w26M2
w26M2
w26M2
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Big-Data-Technologien – Wissen für Entscheider<br />
• 6.2 In-Memory Computing<br />
In-Memory Computing umfasst eine Anzahl von<br />
Technologien, die sich in unterschiedlichen Big-Data-<br />
Komponenten wiederfinden. Durch die Verlagerung der<br />
Datenverarbeitung von der Festplatte in den Rechner-<br />
Hauptspeicher (In-Memory) können Big-Data-Visualisierungen,<br />
-Analysen oder-Transaktionen massiv beschleunigt<br />
werden. Somit kann der geschäftliche Mehrwert<br />
schneller erbracht werden.<br />
Historische Einordnung<br />
Der Begriff In-Memory beschreibt ein Konzept, bei dem<br />
die Daten nicht – wie bei Systemen zur Verarbeitung<br />
von großen Datenmengen üblich – auf der Festplatte<br />
gespeichert und verarbeitet werden, sondern im Hauptspeicher.<br />
Dies hat den Vorteil, dass Zugriffe auf die<br />
Daten wesentlich schneller sind als bei althergebrachten<br />
Herangehensweisen.<br />
Die Verarbeitung der Daten im Hauptspeicher ist, historisch<br />
gesehen, die einzige Art, da die klassische Von-<br />
Neumann-Architektur keine Festplatten kannte. In dieser<br />
Urform des Computers gab es nur den einen Speicher, den<br />
(Haupt-) Speicher. Musste ein Programm Daten verarbeiten,<br />
so griff es direkt auf die Stelle im Speicher zu, an der<br />
die Daten abgespeichert waren. Der Speicher erlaubt also<br />
Zugriffe auf jede Speicherstelle in beliebiger Reihenfolge,<br />
daher auch der Begriff Random Access Memory (RAM).<br />
Bei sehr großen Datenmengen kommt eine reine<br />
hauptspeicherbasierte Herangehensweise jedoch schnell<br />
an ihre Grenzen, da der Speicher üblicherweise für den<br />
ganzen Datensatz nicht ausreicht. Ein gangbarer Weg<br />
ist, nur Teile des Datensatzes in den Hauptspeicher zu<br />
laden und diese unabhängig voneinander zu verarbeiten.<br />
Dies können, wie zum Beispiel bei Datenbanken üblich,<br />
blockbasierte Verfahren sein oder im Fall von analytischen<br />
Berechnungen spezielle Big-Data-Algorithmen. Der<br />
Vorteil dabei ist, dass die Größe der zu verarbeitenden<br />
Daten nicht mehr durch den Hauptspeicher begrenzt ist,<br />
sondern annähernd beliebig groß werden kann. Der Nachteil<br />
ist jedoch, dass die Performance aus zwei Gründen<br />
drastisch sinkt:<br />
• einerseits, weil der Zugriff auf sekundäre Speichermedien<br />
deutlich langsamer ist als auf den Hauptspeicher<br />
und<br />
• andererseits, weil nicht die schnellsten Algorithmen<br />
eingesetzt werden, sondern die, die am besten mit<br />
Datenblöcken umgehen können.<br />
In den letzten Jahren sind die Preise für Hauptspeicher<br />
kontinuierlich gesunken, gleichzeitig ist die Leistungsfähigkeit<br />
der eingesetzten Netzwerkkomponenten enorm<br />
angestiegen, genauso wie das Know-how über die Verteilung<br />
von Berechnungen. Zusammen eröffneten diese<br />
Entwicklungen die Möglichkeit, große Datenmengen,<br />
verteilt auf mehrere Rechnerknoten, im Hauptspeicher zu<br />
verarbeiten.<br />
Typen von In-Memory Datenhaltung<br />
In-Memory spielt im Big-Data-Umfeld eine besondere<br />
Rolle, da erst durch den schnellen Zugriff auf die Daten<br />
typische Big-Data-Herangehensweisen möglich werden.<br />
So erfordert zum Beispiel ein explanatives Vorgehen<br />
Zugriffszeiten, die ein Benutzer noch als akzeptabel empfindet.<br />
Dabei gibt es unterschiedliche Typen und Szenarien<br />
für den Einsatz von In-Memory-Technologien.<br />
Die ausschließliche In-Memory-Verarbeitung der Daten<br />
hat aber auch Nachteile. So ist es, trotz sinkender Hauptspeicherpreise,<br />
immer noch sehr teuer, alle Daten im RAM<br />
zu halten, und außerdem sind die Daten im flüchtigen<br />
Hauptspeicher nicht notwendigerweise vor einem Systemausfall<br />
geschützt. Dafür müssten sie auf der persistenten<br />
Festplatte liegen. In der Praxis haben sich daher<br />
unterschiedliche In-Memory-Varianten entwickelt. Neben<br />
den reinen In-Memory-Systemen gibt es unterschiedliche<br />
Grade an Hybrid-Systemen.<br />
Bei den In-Memory-Systemen haben sich zwei Herangehensweisen<br />
herauskristallisiert:<br />
• die reinen In-Memory-Systeme (z. B. In-Memory<br />
Datenbanken und Data-Grids):<br />
Sie speichern alle Daten im Hauptspeichern und nutzen<br />
die Festplatte nur als persistenten Speicher (z. B.<br />
um die Ausfallsicherheit zu erhöhen).<br />
127