RAID im Überblick - Teil 2

12.08.2004
Die RAID-Technologie soll die Ausfallsicherheit und Leistungsfähigkeit von Festplattensystemen erhöhen - auch für denambitionierten Desktop-Anwender. Acht Varianten mit spezifischen Vor- und Nachteilen stehen zur Auswahl. Von Jörg Luther

Fortsetzung von Ausgabe 32, Seite 37

Nur beim Lesen großer Files kann RAID 3 den Geschwindigkeitsvorteil des parallelen Zugriffs ausspielen. Daher kommt das Verfahren vor allem bei der Verarbeitung großer, zusammenhängender Datenmengen auf Einzelplatzrechnern zum Einsatz: Etwa bei CAD/CAM oder Multimediaverarbeitung.

Das ursprünglichen Berkeley-Papier sah für RAID 3 ein Striping von Bytes beziehungsweise Multibyte-Chunks (typischerweise deutlich unter 1024 Byte) vor. Das im Folgenden erläuterte RAID 4 sollte statt dessen die damals typischen Unix-Festplatten-Blocks (4 oder 8 KByte) als Stripe-Größe nutzen. Abweichend von dieser "reinen Lehre" verwenden heutige RAID-3-Implementationen ebenfalls ein blockweises Striping, um insbesondere eine bessere Balance zwischen Schreib- und Lese-Performance zu erzielen.

RAID Level 4

RAID Level 4 arbeitet anders als RAID 3 mit blockweisem Striping der Nutzdaten. Um die Nachteile von RAID 3 bei der Verarbeitung kleiner Files zu umgehen, verzichtet es dabei allerdings auf eine Synchronisierung der Kopfbewegungen aller Laufwerke. Zur Speicherung der Parity-Informationen nutzt es dagegen wie RAID 2 und 3 ein dediziertes Laufwerk.

Die Kombination aus blockweisem Striping und unabhängigem Plattenzugriff ermöglicht RAID 4 das schnelle Lesen auch kleiner Files. Je nach Dateigröße kann hier jedes Datenlaufwerk eine unabhängige Leseoperation vornehmen. Bei Schreiboperationen allerdings erweist sich RAID 4 aufgrund der fehlenden Synchronisierung RAID 3 unterlegen: Bei jedem ECC -Update muss zunächst die passende Stelle auf dem Parity-Laufwerk gefunden und angesteuert werden. Damit erweist sich hier das ECC-Drive als Flaschenhals.

Aufgrund seiner Arbeitsweise eignet sich RAID 4 vor allem für Umgebungen, in denen erheblich mehr Lese- als Schreiboperationen anfallen. Da es im Vergleich zu RAID 3 nur minimale Vorteile bietet, kommt es nur selten zum Einsatz.

RAID Level 5

RAID Level 5 arbeitet ebenso wie RAID 4 mit einer blockweisen Verteilung der Nutzdaten. Es verzichtet jedoch auf ein dediziertes Parity-Laufwerk und verteilt die ECC- Daten zusammen mit den Nutzdaten gleichmäßig über die Laufwerke. Damit sinkt die Wahrscheinlichkeit, dass gleichzeitig zwei Schreiboperationen auf dieselbe Platte erfolgen. Schreibzugriffe lassen sich also weitgehend parallelisieren. Zudem verteilt sich die mechanische Belastung der Platten gleichmäßig, da keine eine Sonderstellung als Parity-Laufwerk einnimmt.

Auch beim Lesen von Daten bietet RAID 5 durch die Verteilung der Daten über alle Laufwerke eine gute Performance. Dies zahlt sich insbesondere beim Zugriff auf viele kleine Datenblöcke aus. Daher kommt RAID 5 speziell bei Datenbank- oder Transaktionsservern gern zum Einsatz.

Kombi-Verfahren auf RAID-5-Basis

Ähnlich wie RAID 1 lässt sich auch RAID 5 sehr gut mit RAID 0 kombinieren. Das resultierende RAID 0+5 (aka RAID 50) bietet durch Stripen über RAID-5-Sets ähnlich gute Performance wie RAID 10, verursacht aber einen geringeren Kapazitäts-Overhead.

Durch den Zusammenschluss von drei oder mehr Mirror-Sets zu einem RAID 5 entsteht ein RAID 1+5 oder RAID 51. Es bietet gegenüber reinem RAID 5 eine nochmals gesteigerte Ausfallsicherheit, verursacht andererseits aber einen hohen Kapazitäts-Overhead.

RAID 5+5 alias RAID 55 entsteht durch Kombination mehrerer RAID-5-Sets zu einem RAID-5-Array. Es bietet die selbe Ausfallsicherheit wie ein RAID 51, reduziert jedoch den dazu notwendigen Kapazitäts-Overhead etwas. Sein Hauptvorteil liegt jedoch darin, dass sich von den gestripten Stripe-Sets sehr schnell lesen lässt.

RAID 6 und RAID 7

RAID 6 stellt einen Versuch dar, gegenüber RAID 3 bis 5 die Ausfallsicherheit nochmals zu erhöhen. Bei diesen Verfahren darf nur eine Platte des Arrays ausfallen, da sich sonst die Daten nicht mehr per XOR rekonstruieren lassen. RAID 6 umgeht diese Einschränkung, indem es ein RAID 5 um zusätzliche, über die Platten verteilte Parity-Informationen auf Basis von Reed-Solomon-Codes ergänzt. Man spricht hier auch von einer "zweidimensionalen Parity". Vereinfacht kann man sich das als ein RAID 5 vorstellen, das um eine weitere Parity-Platte ergänzt wurde.

Zwar dürfen bei RAID 6 nun zwei beliebige Platten des Verbunds ausfallen, ohne dass Datenverluste auftreten. Die zusätzliche Sicherheit muss allerdings mit gegenüber RAID 3 bis 5 deutlich langsameren Schreibzugriffen sowie einer mageren Performance bei der Rekonstruktion erkauft werden. Eine Software-Variante von RAID 6 implementiert ab Linux 2.6.2 auch der entsprechende Metadisk-Treiber.

Auch das proprietäre RAID 7 ist ähnlich wie RAID 5 aufgebaut. Allerdings setzt der Hersteller Storage Computer im Controller zusätzlich ein lokales Echtzeitbetriebssystem ein. Schnelle Datenbusse und mehrere große Pufferspeicher koppeln die Laufwerke vom Bus ab. Dieses asynchrone Verfahren soll Lese- wie Schreiboperationen gegenüber anderen RAID-Varianten erheblich beschleunigen. Zudem lässt sich, ähnlich wie bei RAID 6, die Paritätsinformation auch auf mehrere Laufwerke speichern.

RAIDn

Das von RAID 6 verwendete Verfahren zur Generierung mehrfacher, unabhängiger Paritätsinformationen lässt sich grundsätzlich auch dazu nutzen, den Ausfall von nahezu beliebig vielen Platten aufzufangen. Eine ausführliche Abhandlung zu den theoretischen Grundlagen finden Sie bei Interesse in einem Papier der University of Tennessee.

Derart aufgebaute Arrays bezeichnet man üblicherweise als RAID n+m oder RAID (n,m). Dabei steht n für die Gesamtzahl der Platten im Verbund und m bezeichnet die Zahl der Platten, die ohne Datenverlust ausfallen dürfen. Dabei entspricht die Nutzkapazität des Arrays n-m Disks. Vorteil einer solchen Konfiguration: Die Ausfallsicherheit lässt sich gegenüber RAID 5 weiter erhöhen, ohne die hohe Redundanz und damit die Kosten von Kombiverfahren wie RAID 51 in Kauf nehmen zu müssen.

Eine industrielle Implementation einer solchen Technik liefert Tandberg Data in seinen Netzwerk-Speichersubsystemen der ValueNAS-Serie aus. Hier kommen für die Generierung der zusätzlichen Paritätsinformationen allerdings keine Reed-Solomon-Codes zum Einsatz, sondern von der Tandberg-Data-Tochter Inostor patentierte, eigene Algorithmen. Die resultierende Technologie bezeichnet Tandberg Data als RAIDn.

RAIDn ist in Form einer in C geschriebene Software-Library implementiert, die derzeit als (über insmod ladbares) Kernel-Modul für Linux vorliegt. Laut Tandberg/Inostor lässt sie sich aber bei Bedarf problemlos auch auf andere Betriebssysteme portieren, wie etwa Sun Solaris oder auch Microsoft Windows.

Implementation

Das von Inostor entwickelte Verfahren verwendet für jede n,m-Kombination einen eigenen Teilalgorithmus, wobei in der momentanen Implementation die Gesamtzahl der Platten n zwischen 4 und 32 liegen darf und die Anzahl der redundanten Disks m 2 oder 3 beträgt.

Getestet hat Inostor das Verfahren jedoch darüber hinaus auch für alle Kombinationen (2 kleiner gleich m kleiner gleich n-2) für n kleiner gleich 21. Bei entsprechender Nachfrage von Kunden will man die Implementation entsprechend erweitern. Neben diesen RAIDn-Leveln unterstützt das Inostor-Modul auch die klassischen RAID-Varianten 0, 1, 10, 4 und 5.

Wie die Tabelle zeigt, realisiert RAIDn gegenüber den herkömmlichen Verfahren bei gleicher Plattenanzahl stets wahlweise eine höhere Kapazität bei gleicher Ausfallsicherheit oder eine höhere Ausfallsicherheit bei gleicher Kapazität. Darf man Inostors Angaben hinsichtlich der Performance Glauben schenken, dann liegt auch diese stets zumindest gleich oder je nach Kombination sogar höher als bei den RAID-1- beziehungsweise RAID-5-Varianten.

RAID-Varianten im Überblick

Die Auswahl eines geeigneten RAID-Levels erfordert eine genaue Abwägung zwischen den Faktoren Verfügbarkeit, Performance und Kosten pro MByte. Eine Organisation der Platten als JBOD verursacht die geringsten Kosten, lässt jedoch in Sachen Ausfallsicherheit und Geschwindigkeit zu wünschen übrig. Ein Array des Levels 1 garantiert dagegen höchste Verfügbarkeit. Es produziert jedoch den höchsten Kapazitäts-Overhead - und somit auch die höchsten relativen Kosten. Fasst man diese Faktoren in einem Diagramm zusammen, ergibt sich das typische RAID-Dreieck

Die Abhängigkeiten zwischen RAID-Level, Performance und Ausfallsicherheit fasst die Tabelle noch einmal zusammen. Wie sich deutlich erkennen lässt, bringt jedes der RAID-Verfahren dabei spezifische Vor- und Nachteile auf die Waagschale.

Verhalten bei Plattenausfall

Ob rechnerinterner Plattenverbund oder externes Speichersubsystem, ob Hardware- oder Software-RAID : Fällt eine Platte des Arrays aus, geht bei den gängigen RAID-Leveln die Redundanz verloren. Jede Fehlfunktion eines weiteren Laufwerks führt in dieser Situation unweigerlich zu Datenverlusten. Konsequenz: Die defekte Platte muss schnellstmöglich ersetzt und das Array rekonstruiert werden.

Im Optimalfall verfügt das Array über eine zusätzliche, ausschließlich im Notfall verwendete Festplatte. Ein solches Hot-Fix-Laufwerk (auch Hot-Spare oder Stand-by-Laufwerk genannt) wird automatisch aktiviert und als Ersatz für die defekte Platte eingebunden. Steht kein Hot-Spare zur Verfügung, gilt es, das defekte Laufwerk manuell zu wechseln. Dies erfordert für gewöhnlich ein Abschalten des Rechners und damit eine Betriebsunterbrechung - was gerade bei Servern in der Regel inakzeptabel ist. Abhilfe schaffen hier Hot-plug- respektive Hot-swapfähige Arrays: Die Festplatten des RAID-Verbundes sind frei zugänglich in Festplatten-Shuttles untergebracht, die sich während des Betriebs wechseln lassen.

Nach erfolgreichem Austausch gilt es, die neue Festplatte in den RAID-Verband einzubinden und die verlorengegangenen Daten zu rekonstruieren. Geschieht dies automatisch, spricht man von Auto-Rebuild. Dieses automatische Wiederherstellen setzt allerdings die Fähigkeit des Controllers voraus, mit dem Festplatten-Shuttle zu kommunizieren (Laufwerkszustand, neues Shuttle eingeführt). Können sich Controller und Shuttle nicht verständigen, muss der Rebuild manuell angestoßen werden.

Fazit: Redundanz mit Grenzen

Zwar lässt sich durch den Einsatz von Diskarrays die Verfügbarkeit von Rechnersystemen deutlich erhöhen. Ein Allheilmittel gegen Datenverluste stellt RAID allerdings nicht dar. Um eine Ausfallsicherheit nahe 100 Prozent zu erreichen, müssen alle Komponenten des Speichersubsystems inklusive Controller, Netzteil und Lüftern redundant ausgelegt werden. Solche Lösungen bietet die Storage-Industrie zwar an, preiswert fallen sie aber nicht gerade aus.

Zudem ereignen sich Ausfälle von Laufwerken und anderen Komponenten nicht immer unabhängig voneinander. In der Praxis treten gelegentlich Situationen ein, durch die sich die Ausfallwahrscheinlichkeit des gesamten Arrays schlagartig erhöht. Dazu zählen etwa durch Blitzschlag verursachte Überspannungen, Überschwemmungen oder Brände. Auch Viren und Würmer befallen RAID-Systeme ebenso gern wie Einzellaufwerke.

Schließlich kann selbst das zuverlässigste Array den Risikofaktor Nummer 1 nicht ausschalten - den Menschen. Den weitaus größten Teil irreparabler Datenverluste verursacht nicht etwa versagende Technik, sondern Fehlbedienung durch den Benutzer. Gelöschte Dateien sind auch auf RAID-Systemen verloren. Selbst für das ausgefeilteste RAID-System gilt deshalb: Den einzig wirklich zuverlässigen Schutz gegen Datenverluste bietet ein konsequent geplantes und vorgenommenes Backup.

tecchannel-Compact "ITechnologie-Ratgeber 2004"

tecChannel.de ist die Nummer eins der Online-Fachmedien in Deutschland (IVW 1/04). Auf www.tecChannel.de finden Sie mehr als 1.700 Beiträge und über 14.000 News zu allen Themen der IT. Das kostenlose Online-Programm wird ergänzt durch das noch umfangreichere kostenpflichtige tecCHANNEL-Premium- und die tecCHANNEL-Compact-Buchreihe.

Im neuen tecCHANNEL-Compact "ITechnologie-Ratgeber 2004" finden professionelle Anwender auf über 220 Seiten Grundlagen, Know-how-, Ratgeber- und Praxisbeiträge.

Insbesondere im Server-, Desktop- und Mobile-Bereich steht ein Generationswechsel bevor. Die Einführung von PCI Express und neuen CPUs, wie Pentium 4 "Prescott" und Pentium M "Centrino", 64-Bit-Computing, sowie der DDR2-Speichertechnologie und Serial Attached SCSI verunsichert die IT-Branche. Die tecCHANNEL-Redaktion beantwortet die Fragen, welche Technologien zukunftssicher sind und die bevorstehenden Investitionen schützen und was beim Umstieg zu beachten ist.

Die Ausgabe ist ab sofort im Handel zu haben oder direkt im Online-Shop unter www.tecChannel.de/shop für 9,90 Euro (gegen Rechnung) inklusive Versandkosten zu bestellen.