Mobile-Menu

Grundlagen: Redundant Array of Independent Disks RAID-Systeme im Überblick

Von Michael Matzer

RAID-Systeme bestehen aus einem Verbund von mindestens zwei Festplatten oder Solid State Drives (SSDs) zu einem logischen Laufwerk, das eine höhere Ausfallsicherheit oder einen größeren Datendurchsatz erlaubt als ein einzelnes physisches Speichermedium. Sie dienen nicht der Datensicherung im Sinne von Backup & Disaster Recovery.

Anbieter zum Thema

Eine der grundsätzlichen Methoden zur RAID-Erstellung ist das Mirroring, bei dem Daten von einer Festplatte auf eine andere gespiegelt werden.
Eine der grundsätzlichen Methoden zur RAID-Erstellung ist das Mirroring, bei dem Daten von einer Festplatte auf eine andere gespiegelt werden.
(Bild: gemeinfrei / Pixabay )

Bei RAID-Systemen werden redundante Informationen gezielt erzeugt, damit beim Ausfall einzelner Speichermedien das RAID (Redundant Array of Independent Disks, manchmal auch: Redundant Array of Inexpensive Disks) als Ganzes seine Integrität und Funktionalität behält und nach Ersetzen der ausgefallenen Komponente durch einen Rebuild der ursprüngliche Zustand wiederhergestellt werden kann.

Hardware-RAID

Beim HW-RAID sorgt der RAID-Controller für das Zusammenspiel der Baugruppen. Er befindet sich häufig im Disk-Array, in dem die Speichermedien enthalten sind. Die Architektur ist wahlweise Direct-Attached Storage (DAS), SAN oder NAS. Eingebettete CPUs können mit ihren großen Cache-Speichern die zentrale CPU des Servers entlasten und für hohen Datendurchsatz sorgen.

Im unteren Preissegment finden sich Host-RAID-Systeme mit IDE/ATA- oder SATA-Festplatten. Es handelt sich jedoch um Software-Implementierung, die eng an die jeweilige Hardware angepasst sind. Letztere kann auch die Hauptplatine eines Rechners sein. Die Implementierungen entsprechen meist RAID 0 oder RAID 1. Fällt der RAID-Controller aus, verliert dieses „Fake RAID“ seine Funktionsfähigkeit.

Software-RAID

Beim SW-RAID, das auch als „Host-based RAID“ bezeichnet wird, übernimmt die Software (Betriebssystem und so weiter) das Zusammenspiel zwischen den Baugruppen. Die meisten modernen Betriebssysteme sind dazu in der Lage, insbesondere auch die quelloffenen. Die Speichermedien sind entweder direkt über Controller an den Rechner und sein Betriebssystem angeschlossen, oder es wird ein Disk-Array angeschlossen. Fehlt der Controller zunächst, werden die Platten und SSDs als JBoD („Just a Bunch of Disks“) beziehungsweise auch JBoF „Just a Bunch of Flash“) in das System integriert, dann implementiert die Software die RAID-Funktionalität. Bei Linux erfolgt dies beispielsweise mit der Software mdadm. Es gibt auch Filesysteme mit integrierter RAID-Funktionalität, so etwa RAID-Z von Sun Microsystems (jetzt Oracle).

Sollte der RAID-Controller (Hardware) ausfallen und nicht mehr verfügbar sein, kann die RAID-Software dennoch die Informationen von den Platten und SSDs lesen, was für die Datenwiederherstellung (Disaster Recovery) sehr hilfreich ist. Neben der CPU werden bei Software-RAID vor allem die System-Busse wie etwa PCIe stärker belastet als bei Hardware-RAID. Um Datenverlust im Fall des Stromausfalls und so weiter vorzubeugen, sollten Schreib-Caches deaktiviert werden und eine USV die Weiterversorgung mit Strom aufrechterhalten, sonst gehen Daten im Cache verloren. Bei Hardware-Controllern sorgt eine Pufferbatterie für die Stromversorgung. Die Deaktivierung von Caches verlangsamt jedoch die Datenverarbeitung erheblich.

Was ist ein Rebuild?

Als Rebuild bezeichnet man den Wiederherstellungsprozess eines RAID-Verbundes. Er wird notwendig, wenn eine oder mehrere Festplatten (je nach RAID-Level) im RAID-Verbund ausgefallen oder entfernt worden sind und anschließend durch neue Festplatten ersetzt wurden. Da die neuen Festplatten unbeschrieben sind, müssen mit Hilfe der noch vorhandenen Nutz- beziehungsweise Paritätsdaten die fehlenden Daten auf sie geschrieben werden. Unabhängig von der Konfiguration des RAID-Systems bedeutet ein Rebuild immer eine höhere Belastung der beteiligten Hardware-Komponenten.

Ein Rebuild kann, abhängig vom RAID-Level, der Plattenanzahl und -größe, durchaus mehr als 24 Stunden dauern. Um bei einem Rebuild weitere Plattenausfälle zu vermeiden, sollte man Festplatten aus unterschiedlichen Herstellungschargen für ein RAID verwenden – man weiß ja nie, ob in der gleichen Charge noch weitere „faule Eier“ verborgen sind: Weil die Platten unter gleichen Betriebsbedingungen arbeiten und dasselbe Alter besitzen, besitzen sie auch eine ähnliche Lebens- und Ausfallerwartung.

Die verbreitetsten RAID-Level

Es gibt drei gebräuchliche RAID-Level sowie sechs Level, die inzwischen außer Gebrauch sind. Darüber hinaus gibt es zahlreiche Kombinationsmöglichkeiten. Ein genauerer Blick auf die drei wichtigsten Level könnte sich also lohnen: Striping, Mirroring und Block-Level Striping. Die Unterschiede zeigen sich schnell in der jeweiligen Ausfallwahrscheinlichkeit.

Bei der Präsenz von drei Platten à 1 Terabyte, die jeweils eine Ausfallwahrscheinlichkeit von 1 Prozent in einem gegebenen Zeitraum haben, gilt:

  • RAID 0 stellt 3 TB zur Verfügung. Die Ausfallwahrscheinlichkeit des RAIDs beträgt 2,9701 Prozent (1 in 34 Fällen).
  • RAID 1 stellt 1 TB zur Verfügung. Die Ausfallwahrscheinlichkeit des RAIDs beträgt 0,0001 Prozent (1 in 1.000.000 Fällen), also minimal. Das Manko ist die geringe Speicherkapazität.
  • RAID 5 stellt 2 TB zur Verfügung. Die Ausfallwahrscheinlichkeit des RAIDs beträgt 0,0298 Prozent (1 in 3.356 Fällen), ist also ebenfalls gering, doch die Speicherkapazität ist doppelt so hoch wie bei RAID 1.

Raid 0: Striping

Eigentlich liegt bei RAID 0 keine Redundanz vor, denn die Daten sind ohne Duplikation auf Streifen über die vorhandenen Festplatten verteilt. Das hat den Vorteil, dass diese Puzzlestücke parallel ausgelesen werden können und so mithilfe des Controllers eine hohe Datenübertragungsrate erlauben. Die Größe der Datenblöcke wird als „Striping-Granularität“ (auch „stripe size“, „chunk size“ oder „interlace size“) bezeichnet. Meistens wird bei RAID 0 eine „chunk size“ von 64 Kilobyte gewählt. Fällt eine der Festplatten aus, so fehlen auch deren Datenblöcke für die Wiederherstellung. RAID 0 kommt also nur infrage, wenn Ausfallsicherheit unwichtig ist.

RAID 1: Mirroring

RAID 1 ist der Verbund von mindestens zwei Festplatten. Ein RAID 1 speichert auf allen Festplatten dieselben Daten (Spiegelung) und bietet somit volle Redundanz und damit Ausfallsicherheit. Das ist besonders in sicherheitsrelevanten Echtzeitsystemen von höchster Bedeutung.

Der Nachteil: Die Kapazität des Disk-Arrays kann maximal so groß wie die kleinste beteiligte Festplatte betragen. Vorteil: Die Spiegelplatten können sich in anderen Rechnern befinden und lassen sich unabhängig verwalten. Bei Spiegelplatten am selben Controller spricht man von „Mirroring“, von „Duplexing“ jedoch, wenn die Spiegelplatten jeweils an einem eigenen Controller hängen. Doch die Wahrscheinlichkeit eines Controller-Ausfalls ist so gering, dass der Unterschied nur theoretisch ins Gewicht fällt.

Aufwändige Rebuilds sind nur dann notwendig, wenn die Platten wieder redundant betrieben werden sollen. Im Störfall wie auch bei Migrationen beziehungsweise Upgrades bedeutet das einen erheblichen Vorteil. Ist indes Sicherheit eine Top-Priorität, sollte auf jeden Fall auf Backups zurückgegriffen werden. Dafür sind RAID-Systeme nicht ausgelegt.

Betreibt man den Lesevorgang an mindestens zwei Festplatten parallel, so lässt sich die Lese- und Transferleistung der entsprechend kombinierten Plattensektoren verdoppeln. Dazu müssen die Sektoren beider Platten fehlerfrei sein. Ist dies nicht der Fall, gibt es ein Sicherheitsproblem. Um es zu beseitigen, muss der Controller in der Lage sein, fehlerhafte Sektoren der einen Platte mit fehlerfreien Sektoren der anderen Platte zu ergänzen – eine knifflige Leistung, die zudem die Gesamtleistung vermindert. Ein Hybrid-RAID-Verbund aus Festplatten und SSDs kann die hohe Lesegeschwindigkeit von SSDs mit der Redundanz der Festplatten verbinden.

RAID 5: Block-Level Striping

Der RAID-Level 5, das hohe Leseleistung mit Redundanz kombiniert, implementiert Striping (Level 0) mit auf Block-Level-verteilten Paritätsinformationen. Zur Berechnung der Parität wird aus den jeweils an derselben Adresse anliegenden Datenblöcken der am RAID-Verbund beteiligten Festplatten eine logische Gruppe gebildet. Von allen Datenblöcken einer Gruppe enthält ein Datenblock die Paritätsdaten, während die anderen Datenblöcke Nutzdaten enthalten. Die Nutzdaten von RAID-5-Gruppen werden wie bei RAID 0 auf alle Festplatten verteilt. Die Paritätsinformationen werden jedoch nicht wie bei RAID 4 auf einer Platte konzentriert – denn ausgerechnet diese könnte ja ausfallen –, sondern ebenfalls verteilt.

Dieser Level bietet sowohl gesteigerten Datendurchsatz beim Lesen von Daten als auch Redundanz bei relativ geringen Kosten und ist dadurch eine sehr verbreitete RAID-Variante. In schreibintensiven Umgebungen mit kleinen, nicht zusammenhängenden Änderungen ist RAID 5 weniger zu empfehlen, da bei zufälligen Schreibzugriffen der Durchsatz aufgrund des zweiphasigen Schreibverfahrens deutlich abnimmt. In dieser Hinsicht wäre eher eine RAID-1-Konfiguration zu empfehlen.

RAID 5 ist eine kostengünstige Option, Daten auf mehreren Festplatten – meist drei oder fünf – redundant zu speichern und dabei das Speichervolumen effizient zu nutzen. Dieser Vorteil könnte bei wenigen Platten allerdings durch hohe Controllerpreise aufgewogen werden. Daher kann es in einigen Situationen dazu führen, dass ein RAID 10 – ein RAID 0 über mehrere RAID 1 – kostengünstiger ist.

Die nutzbare Gesamtkapazität errechnet sich aus der Formel: (Anzahl der Festplatten − 1) × Kapazität der kleinsten Festplatte. Rechenbeispiel mit vier Festplatten à 1 TB: (4−1) × 1 TB = 3 TB Nutzdaten und 1 TB Parität. Ein RAID 5 versagt nur, wenn zwei Festplatten gleichzeitig ausfallen. So lässt sich die Ausfallwahrscheinlichkeit anhand einer weiteren Formel berechnen.

Eine Methode zur Verbesserung der Rebuild-Leistung und damit der Ausfallsicherheit ist präemptives RAID 5. Hierbei werden interne Fehlerkorrekturstatistiken der Platten zur Vorhersage eines Ausfalls herangezogen. Vorsorglich wird nun die Hotspare-Platte mit dem kompletten Inhalt der ausfallverdächtigsten Platte im RAID-Verbund synchronisiert, um zum vorhergesagten Versagenszeitpunkt sofort an deren Stelle treten zu können. Dieses Verfahren ist bislang noch wenig verbreitet, denn es erfordert „Self-Monitoring, Analysis and Reporting Technology“ (SMART), also aufwändige Algorithmen.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Data-Storage und -Management

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

(ID:47965852)