Flash-Speicher im Rechenzentrum

Ratgeber - SSDs in SAN-Umgebungen richtig nutzen

17.04.2013
Von Allon Cohen und
Director of Marketing & PR EMEA bei OCZ Storage Solutions - einer Toshiba Group Company
Festplatten-Arrays stoßen insbesondere in virtualisierten Umgebungen und Enterprise-Szenarien schnell an die Grenzen bei hoher I/O-Last. Mit Flash-Speichern lässt sich der Zugriff auf die Daten erheblich beschleunigen. Lesen Sie, worauf es bei SSDs im Enterprise-Einsatz ankommt.

Mit stetig wachsendem Datenspeichervolumen und der Notwendigkeit einer schnelleren Datenverarbeitung, benötigen viele Unternehmen bessere Speicher-Ressourcen, um diesen Bedarf zu erfüllen. Auf der Jagd nach der besten Lösung werden sie mehr und mehr mit den Vorteilen der SSD-Technologie vertraut, welche sich in heutigen Rechenzentren auf vielfältige Weise zeigen.

Um die Frage "Wann und wo SSDs in einem SAN Sinn machen?" zu beantworten, müssen erst die grundlegenden Eigenschaften der Flash-basierenden Laufwerke herausgestellt werden. Die SSD ist aus vier wichtigen Elementen aufgebaut: PCB, Controller, Flash-Speicher und Firmware. Die SSD kommt vollständig ohne bewegliche Teile aus.

Die Solid State Disk wurde entwickelt, um Daten viel schneller zu schreiben und zu lesen als die konventionelle rotierende Disk in der Festplatte. Der offensichtliche Unterschied zwischen den beiden ist der Magnetkopf, welcher auf der Scheibe die spezifische Position suchen muss, um die angefragten Daten der HDD zur Verfügung stellen zu können, das schnellere Flash-Medium besitzt keine beweglichen Teile, die es bremsen. Der Controller hat bereits die Adressen verfügbar, an denen sich die Daten befinden. Damit ist eine SSD perfekt, um Random-Daten zu lesen und zu schreiben, während die HDD beim Zugriff auf Random-Daten eine physikalische Beschränkung aufweist und damit einen Engpass verursacht. Speziell wenn es darum geht, die Anzahl von Input und Output-Befehlen pro Sekunden (IOPS) zu erhöhen, sind Festplatten schnell an ihrer Grenze.

Sequenzielle & zufällige Daten

Reduktion: Für I/O-Last von 500.000 IOPS sind entweder 4000 Festplatten oder nur wenige SSDs notwendig.
Reduktion: Für I/O-Last von 500.000 IOPS sind entweder 4000 Festplatten oder nur wenige SSDs notwendig.
Foto: OCZ

Eine HDD wurde schon immer für aufeinanderfolgende Datenströme konzipiert, um sequentielle Lese- und Schreibvorgänge zu handhaben. Das bedeutet, dass sequentiell geschriebene oder gelesene Daten physikalisch auf der gleichen Spur erwartet werden. Wenn die Daten über den physischen Datenträger verteilt werden, ist von Zeit zu Zeit eine Defragmentierung notwendig, um die normale Geschwindigkeit der HDD aufrecht zu erhalten.

Allerdings sind moderne Betriebssysteme für eine Simultanverarbeitung ausgelegt und kreieren mit diesen komplexen Daten mehr und mehr Random (zufällige) Lese- und Schreibvorgänge. Genau hier schwächelt eine HDD im Gegensatz zur SSD, welche problemlos dafür geeignet ist, sowohl sequenzielle als auch zufällige Daten zu verarbeiten. Doch es gibt noch mehr; nicht nur die Lese- und Schreibgeschwindigkeit einer SSD ist schneller, sondern auch die Zugriffszeiten verringern sich drastisch. Im Vergleich braucht eine HDD zwischen 3 und 20 Millisekunden wohingegen eine SSD nur zirka 0,02 Millisekunden benötigt, was im Verhältnis zirka. die 1000-fach verringerte Reaktionsfähigkeit einer HDD bedeutet.

HDD-Array durch SSD ersetzen?

Einsatzszenarien: SSDs werden typischerweise für sehr Business-kritische Applikationen verwendet, wo es auf sehr hohe IOPS ankommt.
Einsatzszenarien: SSDs werden typischerweise für sehr Business-kritische Applikationen verwendet, wo es auf sehr hohe IOPS ankommt.
Foto: OCZ

Bei der Analyse einer IT-Infrastruktur wird die gesamte Performance nur so schnell und stabil sein, wie das in diesem Umfeld befindliche schwächste Element. Normalerweise ist es das HDD-Array, welches durch die Nachteile der Festplatten begrenzt ist.

Mit dieser Erkenntnis im Hinterkopf liegt es nahe, die erste Option zu wählen und das HDD-Array im SAN geradewegs durch SSDs zu ersetzen. Diese würden den HDD-Flaschenhals beseitigen. Wäre die SSD erst einmal im Server eingebaut, so könnten Benutzer die Daten viel schneller über die gesamte Infrastruktur verarbeiten. Dies ist der einfachste Ansatz zur Lösung des angesprochenen SAN-Problems. Im Vergleich zu einer SSD hat eine HDD mit zirka 205 - 350 IOPS eine deutlich geringere I/O-Leistung als eine SSD mit rund 50.000 - 100.000 IOPS. Solid State Disks sind somit sehr interessant und effizient für Server und SANs.

Aber was wäre, wenn die Datenbank nur 50 Prozent der derzeitigen Speicher im existierenden SAN benötigt? Nur die Hälfte der Drives mit SSDs zu ersetzen würde die benötigte Gesamtfläche reduzieren (weniger Investitionen) und trotzdem die SAN-Performance gleichzeitig dramatisch verbessern. Das klingt für jeden Administrator oder IT-Manager interessant, wobei es möglicherweise noch bessere und effizientere Lösungen gibt.

Daten-Blender-Effekt im SAN

Ein weiterer Aspekt in einer Server- und SAN-Umgebung ist, wenn Nutzer mehrere Lasten auf einem virtuellen Server laufen lassen, alle Operationen in einem Datenstrom zusammengefasst werden. Was bedeutet das in der Realität? Alle diese sequentiellen Datenbefehle werden in einen großen zufälligen Datenpfad integriert und versuchen so auf das SAN zuzugreifen. Das nennt sich "Daten-Blender-Effekt".

In den letzten Jahren sind SAN-Arrays hinsichtlich Größe extrem gewachsen. In vielen Fällen liegt dies jedoch nicht in einer wachsenden Datenbank begründet, sondern am steigenden Bedarf der I/O-Performance. Dieser Bedarf an IOPS kann aufgrund der geringen In- und Outputs pro Laufwerk nur durch eine höhere Anzahl an rotierenden Speichermedien (Arrays) gedeckt werden. Dies bedeutet, dass eine SSD gerade in Bezug auf diese I/O-Leistung hunderte HDDs ersetzen kann.

Doch noch einmal: die gesamte SAN-Infrastruktur, einschließlich Server, allen Verbindungen und Zugriffspunkten wird nur so schnell sein, wie das langsamste Element. HDDs durch SSDs zu ersetzen wird daher nicht immer die effizienteste Lösung sein.

Verbesserung der Effizienz durch Caching

Flash richtig einsetzen: SSD werden im SAN gebraucht, wo sogenannte "Hot Zones" sind. Der Flash-Speicher punktet hier mit niedrigen Latenzzeiten und der Fähigkeit, sehr viele parallele Anfragen flink abzuarbeiten (hohe IOPS).
Flash richtig einsetzen: SSD werden im SAN gebraucht, wo sogenannte "Hot Zones" sind. Der Flash-Speicher punktet hier mit niedrigen Latenzzeiten und der Fähigkeit, sehr viele parallele Anfragen flink abzuarbeiten (hohe IOPS).
Foto: OCZ

Aus Sicht der Nutzer ist die Reaktionsfähigkeit das Einzige was technisch zählt. Wie schnell bekomme ich die Daten auf meinen Server? Wie wir bereits festgestellt haben, könnte der Zugriff des Servers auf das SAN der Flaschenhals sein. Aus Nutzersicht zählt einzig und allein, dass die angefragten Daten so schnell wie möglich und am besten sofort bearbeitet werden. Als weitere effektive Möglichkeit zum Erhöhen der Reaktionsfähigkeit lässt sich im Server eine SSD hinzufügen und für das Caching der am häufigsten verwendeten Daten (Hot Data) verwenden. Das HDD-Array wird dabei nicht ersetzt.

Bei jedem Anwendung-Datenzugriff-Profil gibt es immer eine Teilmenge an Daten, welche regelmäßig abgefragt werden. Diese Daten befinden sich auch in einem Daten-Protokoll auf der SSD im Server und nicht nur im SAN. Dank der I/O-Leistung der im Server platzierten SSD muss der Nutzer die Daten nicht vom SAN anfordern, da diese "Hot Data" bereits auf die SSD im Server kopiert wurden und der gesamte HDD-Flaschenhals sowohl im SAN als auch im Server gelöst wurde.

Durch das Hinzufügen dieses Protokolls verringert sich nicht nur die Investition in weniger SSD-Laufwerke. Die Performance profitiert ebenfalls von den Vorteilen der Flash-Technologie. Außerdem lässt sich diese Caching-Lösung problemlos in den meisten bestehenden Servern einsetzen. Dieser Einsatz ist derzeit eine der kostengünstigsten und effizientesten Lösungen.

SAN-los

Es gibt eine weitere Option: Je nach bloßer Größe von Rechenzentren kann man sich auch für eine SAN-lose Umgebung entscheiden. Wenn Datenbanken eine kleinere Größe haben, aber eine hohe I/O-Last aufweisen, könnte ein SAN auch überflüssig sein.

Enterprise-SSDs im Einsatz: Noch 2007 wurde Flash-Speicher hauptsächlich für Datenbanken verwendet. Einen starken Anstieg verzeichnen die Solid State Disks laut Gartner beim Data Warehousing.
Enterprise-SSDs im Einsatz: Noch 2007 wurde Flash-Speicher hauptsächlich für Datenbanken verwendet. Einen starken Anstieg verzeichnen die Solid State Disks laut Gartner beim Data Warehousing.
Foto: OCZ

Ein einfacher Server mit einer Flash-Umgebung würde diese Arbeit sehr gut erledigen. Innerhalb einer Flash-Umgebung kann ein separates Volumen erstellt werden und als SAN-Speicher agieren, alles auf der gleichen Server-Hardware residierend. Dies ist die ultimative Lösung für ein SAN ohne durch einen SAN oder "Daten-Blender-Effekt" verursachten Flaschenhals. Der Server reagiert ohne große Laufwerk-Arrays mit sehr niedrigen Latenzzeiten. Außerdem reduzieren sich Wartung und Kühlung erheblich, die Energiekosten und Ersatzteillagerhaltung sinken.

Intelligenz ist wichtig

Der Austausch oder die Ergänzung von Flash-Lösungen bietet gegenüber einem SAN viele Vorteile. Essentiell ist aber eine intelligente Art und Weise, diesen Flashspeicher auch zu nutzen. Wie bereits erwähnt, gewinnt man mit dem Austausch eines sich drehenden Laufwerks durch ein Flash-Laufwerk Leistung. Allerdings beinhaltet dies noch viel mehr. Betriebssysteme müssen auf den Servern laufen. Ebenso unternehmenskritische Anwendungen. Den Unterschied macht die Implementierung eines Software-Layers, welcher das Flash-Laufwerk in das Betriebssystem bestmöglich integriert. Das Flash-Drive ist der "Muskel" und die Software das "Gehirn" der gesamten Lösung.