Datenspeicherung auf Festplatte, SSD oder In-Memory

Donnerstag, 26. Mai 2011, 23:18 Uhr

Noch keine Kommentare

Längst ist die Festplatte nicht mehr das alleinige Speichermedium in der IT. Speziell im BI-Bereich ist auch vielfach von der In-Memory-Technologie die Rede, also der Speicherung der Daten im Arbeitsspeicher. Dabei geht es immer um das Thema der höheren Zugriffsgeschwindigkeit. Doch keine Technik ohne Tücken, weshalb ich mit den Solid-State-Disks eine dritte Alternative ins Gespräch bringen und diskutieren möchte.

Beim 2. Workshop OSBI am 24. Februar in Karlsruhe habe ich einen Vortrag über die Ergebnisse meiner Master-Thesis (Download der Folien) gehalten, die sich mit In-Memory OLAP-Systemen beschäftigte. In-Memory ist dabei als technologischer Ansatz zu verstehen, der durch die Speicherung der Daten im Arbeitsspeicher im Vergleich zur Festplatte sehr schnelle Abfragen ermöglicht. Allerdings hat auch diese Technologie ihre Grenzen und Schwachstellen. Ich möchte nun (endlich) ein interessantes Gespräch im Anschluss an meinen Vortrag aufgreifen und die Solid State Disk (SSD) als Mittelweg zwischen klassischen Festplatten und der In-Memory-Technologie diskutieren.


Von der Speicherung auf der Festplatte zur Speicherung im Arbeitsspeicher

Die Datenspeicherung erfolgt eigentlich seit Anbeginn der Computer-Technik auf Festplatten. Der zur Verfügung stehende Speicherplatz wird dabei immer größer – momentan nehmen einzelne Laufwerke einige Terabyte Daten auf – und der Preis pro Gigabyte wird immer geringer. Auf diese Weise können die stetig steigenden Datenmengen problemlos aufgenommen werden. Allerdings beinhalten Festplatten mechanische Bauteile und sind deshalb mit Blick auf die Speicherpyramide schon aufgrund dessen verhältnismäßig langsam.

Bildquelle: openbook.galileocomputing.de/linux/linux_05_001.htm

Die Abbildung zeigt, dass sich Speicherkapazität und Zugriffszeit umgekehrt proportional verhalten. Um bessere Zugriffszeit als bei Festplatten zu erreichen, muss innerhalb der Speicherpyramide eine Stufe nach oben gestiegen werden, womit wir bei der In-Memory-Technologie wären. Gleichzeitig nimmt damit aber die Größe des zur Verfügung stehenden Speicherplatzes ab.

Bei Nutzung der In-Memory-Technologie im BI-Bereich werden die Daten entweder direkt in den Arbeitsspeicher geschrieben oder während der Initialisierung einmalig von einem persistenten Arbeitsspeicher geladen. Liegen die Daten erst einmal im Arbeitsspeicher, so sind um ca. den Faktor 1000 schnellere Zugriffszeiten realisierbar. Allerdings limitiert sich die In-Memory-Technologie damit bereits selber da die mögliche Datenmenge um ein Vielfaches geringer und gleichzeitig teurer ist als auf Festplatten. Zudem hat die In-Memory-Technologie auch mit dem Problem zu kämpfen, dass der Speicher flüchtig ist und die Daten sowohl bei einem (ungeplanten) Stromauswahl oder auch bei einem (geplanten) Neustart des Systems – im besten Fall nur temporär, im Worst-Case nicht wiederherstellbar – „verloren“ gehen.

Festplatten und Arbeitsspeicher positionieren sich also sehr unterschiedlich hinsichtlich der Faktoren Größe, Performance und Preis. Die Entscheidung für eine größere mögliche Datenmenge und damit klassischen Festplatten bedingt also zwangsläufig eine schlechtere Performance. Ein bessere Performance durch die Nutzung der In-Memory-Technik reduziert nicht nur die Größe des zur Verfügung stehenden Speichers, sondern bedingt auch höhere Kosten pro Gigabyte.


Quo vadis?! Alternativen?!

Mit Solid State Drives (SSDs) könnte eine noch recht „junge“ (wenn man das in der IT überhaupt so sagen darf) Technologie eine dritte Alternative darstellen, die in gewisser Weise einen Mittelweg ermöglicht und eine bessere Performance als jene klassischer Festplatten bei gleichzeitig größerer Datenmenge als im Arbeitsspeicher bietet. Zudem rangieren die Kosten pro Gigabyte zwischen Festplatte und Arbeitsspeicher in mittlerweile akzeptablen Regionen.

SSDs können etwas lapidar als große USB-Sticks angesehen werden. Die Daten werden auf Flash-Speichern gespeichert und es gibt keine mechanischen Bauteile mehr. Damit kommt aber ein neuer Nachteile zum Tragen. Je nach Architektur und der Fertigung kann jeder Speicherblock nur endlich oft beschrieben werden. Zwar sorgt der Controller des SSD mit einem Pool an Reserve-Blöcken (für den Benutzer transparent) dafür, dass defekte Blöcke ersetzt werden und die Speicherkapazität noch eine Weile lang gleich bleibt, aber auch dieser Pool ist irgendwann erschöpft. Defekte Blöcke können dann nur noch gelesen, aber nicht mehr verändert werden. Ungeeignet sind SSDs damit für Anwendungsfälle mit sehr vielen Datenänderungen, da jede Datenänderung potentiell einem Schreibvorgang entspricht.

Der Einsatz von Solid State Disks stellt in gewisser Weise eine Abkehr der gewohnten Richtung in der Speicherhierarchie dar. Bisher ging der Weg immer streng nach oben: von optische Speichermedien (CDs, DVDs) hin zu magnetischen Speichern und schließlich hin zum Arbeitsspeicher. SSDs siedeln sich in der Speicherpyramide (siehe 1. Abbildung) zwischen magnetischen Speichermedien und dem Arbeitsspeicher an.


Fazit

Dieser Beitrag hat nicht den Anspruch eine Antwort auf die Frage nach dem „richtigen“ Speichermedium zu liefern. Denn diese kann wie so oft nur mit einem „kommt drauf an“ beantwortet werden. Wie überall muss klar sein, wie die Gewichtung der 3 Faktoren Größe, Performance und Preis ist. Große DWHs wie jene großer Handelsketten oder beispielsweise von eBay werden sich aufgrund der ungeheuren (wahrscheinlich) nie in Hauptspeicher pressen lassen. Auf der anderen Seite ist im Börsenbereich die Performance von Berechnungen und Auswertungen geschäftskritisch. SSDs verschlechtern einerseits die Vorteile, verbessern aber andererseits auch die Nachteile von Festplatten und Arbeitsspeicher und sind somit sicherlich eine sehr interessante Alternative und ein möglicher „Mittelweg“. Persönlich kenne ich jetzt noch keine Anwendungsfälle von SSDs im BI-Bereich – nur einige Mac-Benutzer, die begeistert von der Performance ihres Macs sind nachdem das Betriebssystem auf der SSDs läuft – aber vielleicht findet sich ja mal ein Student, der sich im Rahmen einer Abschlussarbeit damit beschäftigen will?! An den Ergebnissen würde ich hiermit schon mal mein Interesse anmelden…


Alternativen und weiter gedacht

Und wer gleich ganz auf eigene Festplatten verzichten und sich auch nicht um den Verschleiß kümmern will, der landet schnelle beim Cloud Computing. Oder wie es die Wirtschaftswoche nennt, den Festplatten der Zukunft. Aber das Thema Cloud Computing ist vielleicht ein anderes Mal dran.

Und wenn irgendwann selbst der Arbeitsspeicher zu lange braucht, bleibt nur die Flucht nach vorne und damit der Aufstieg in der Speicherpyramide. Einen interessanten Ansatz hat die Jedox AG mit der GPU-Technik in den BI-Bereich gebracht. Aber das ist ein anderes Thema, welches sicherlich auch mal einen eigenen Beitrag bekommen wird.

Kommentare zu diesem Beitrag

Bisher wurde noch keine Kommentare abgegeben.
Sie können also die oder der Erste sein.

Jetzt einen neuen Kommentar abgeben



(optional, Ihr Name wird entsprechend verlinkt)