Raid Level und ihre Bedeutungen

Was sind Raid Level und wozu werden sie verwendet?

Die Raid Level und ihr Zweck

RAID Konfigurationen sind in vielen unterschiedlichen Konfigurationen verfügbar. Diese Vereinen entweder die Vorteile des schnellen Schreibzugriffs oder der hohen Ausfallsicherheit in sich. Auch Kompromisse zwischen beidem sind dementsprechend verfügbar.  Man unterscheidet deshalb in verschiedene RAID-Systeme.

Ein Paar Begriffe zum besseren Verständnis im Voraus :

 

Redundant: Eine Festplatte kann ausfallen ohne das komplette System zu zerstören.

Hot Swap: Eine Festplatte kann während das System läuft gewechselt werden.

Hot Spare: Eine Festplatte steht dem System jederzeit zur Verfügung und schaltet sich im Fehlerfall zu

Array: Verbund von Festplatten

Striping: "Streifen" - Einzelne Datenstreifen werden auf unterschiedliche Platten verteilt.

Dezidiert: Fest Zugewiesem

 

Welche Raid Level gibt es?

 

Es existieren viele mehr oder weniger bekannte Raid Level zwischen 0 und 7. Weiterhin existieren RAID-Systemverbünde wie 10, 30 oder 51. Diese setzten sich aber immer aus den Grund-RAIDS zusammen. Die bekannteren sind RAID 1,5 oder 6 - weniger bekanntere sind 2,4 oder 7.

 

RAID 0: Data Striping

RAID 0 System

Streng genommen handelt es sich bei RAID 0 nicht um ein wirkliches RAID, da es keine Redundanz gibt.

RAID 0 bietet gesteigerte Transferraten, indem die beteiligten Festplatten in zusammenhängende Blöcke gleicher Größe aufgeteilt werden, wobei quasi im Reißverschlussverfahren diese Blöcke zu einer großen Festplatte angeordnet werden, so dass somit Zugriffe auf allen parallel durchgeführt werden können (engl. striping, was „in Streifen zerlegen“ bedeutet, abgeleitet von stripe, der „Streifen“).

Die Datendurchsatz-Steigerung (bei sequentiellen Zugriffen, aber besonders auch bei hinreichend hoher Nebenläufigkeit) beruht darauf, dass die notwendigen Festplatten-Zugriffe in höherem Maße parallel abgewickelt werden können. Die Größe der Datenblöcke wird als Striping-Granularität (auch „chunk size“ oder „interlace size“) bezeichnet. Meistens wird bei Raid 0 eine chunk size von 128 kb gewählt.

Fällt jedoch eine der Festplatten durch einen Defekt (vollständig) aus, kann der RAID-Controller ohne deren Teildaten die Nutzdaten nicht mehr vollständig rekonstruieren. Eine teilweise Restauration ist unter Umständen jedoch möglich, nämlich genau für die Dateien, die nur auf den verbliebenen Festplatten gespeichert sind, was typischerweise nur bei kleinen Dateien und eher bei großer Striping-Granularität der Fall sein wird.

 

Raid 1: Mirroring

Ein RAID-1 muss aus mindestens zwei Festplatten bestehen, die exakt die gleichen Daten enthalten (engl. mirroring oder duplexing). RAID 1 bietet die volle Redundanz der gespeicherten Daten, während die Kapazität des Arrays höchstens so groß ist wie die kleinste beteiligte Festplatte.

Fällt eine der gespiegelten Platten aus, kann jede andere weiterhin alle Daten liefern. Besonders für sicherheitskritische Echtzeitanwendungen ist das unverzichtbar. RAID 1 bietet eine hohe Ausfallsicherheit: zum Totalverlust der Daten führt erst der Ausfall aller Platten.

 

Raid 2: Hamming

Wird eigentlich nicht mehr verwendet und auch von keinem Hersteller am Markt unterstützt. Preis/Leistungsverhältnis ist im Gegensatz zu RAID 5 auf miserablem Niveau. Diese Technik bestand darin, dass 2 oder mehr Festplatten als Datenspeicher dienten, und dazu eine oder mehrere EEC Festplattem verbunden wurden. ECC steht hierbei für Error Correction Code - Fehler-Korrigier-Code. Dabei wird jedes Bit verteilt auf alle Datenplatten geschrieben und jeweils ein ECC dazu erzeugt und abgelegt. Dadurch war es möglich die Daten bei jedem Zugriff auf Integrität zu prüfen und gegebenenfalls zu korrigieren. Da beide Festplatten getrennt voneinander angesprochen werden waren extrem hohe Transferraten möglich - jedoch nur bei synchronisierten Festplatten. Der Aufwand der dafür betrieben werden müsste ist es aber nicht wert.

 

RAID 3: Byte-Striping mit dediziertem Parity-Laufwerk

RAID 3 wird gerne als der Vorgänger des RAID 5 Systems angesehen. Striping bedeutet, dass die zu speichernden Dateien unter den verfügbaren Festplatten aufgeteilt werden. Redundanzdateien ( grob vereinfacht bedeutet das, wie oft Informationen doppelt oder zumindest wieder herstellbar vorhanden sind) werden hierbei auf einer seperaten Festplatte abgespeichert. Die Redundanz definiert sich hierbei dass die Bits zusammengezählt werden und die Summe berechnet wird. Dadurch lässt sich beim Ausfall einer Platte das fehlende Bit "zurückrechnen". Zur Veranschaulichung ein Beispiel:

Man nehme 2 Datenfestplatten und eine Festplatte auf denen Paritätsdaten abgespeichert werden.

 

Die Bits der Datenfestplatten werden zusammengezählt und es ergibt sich eine Summe. Diese ist gerade oder Ungerade. Das bildet dann das Summenbit der Paritätsplatte:

0+0 = Summe 0 = Gerade Summe = Summenbit 0

1+0 = Summe 1 = Ungerade Summe = Summenbit 1

0+1 = Summe 1 = Ungerade Summe= Summenbit 1

1+1 = Summe 2 = Gerade Summe = Summenbit 0

Geht nun eine der beiden Datenfestplatten kaputt kann man "zurückrechnen":

 

?+0 = Gerade Summe = ? kann nicht 1 sein, nur 0

?+0 = Ungerade Summe =  ? kann nicht 0 sein nur 1

?+1 = Ungerade Summe = ? kann nicht 1 sein nur 0

?+1 = Gerade Summe = ? kann nicht 0 sein nur 1

Na, hat es bei ihnen "Klick" gemacht ? Das schöne ist, dass sich das mit unendlich vielen Festplatten und nur einer Paritätsplatte fortsetzen lässt (Limitiert auf Schreibgeschwindigkeit und Größe) :

0+0+0+0+0 = Summe 0 = Gerade Summe = Summen Bit 0

Bei Verlust einer beliebigen Datenfestplatte:

0+0+?+0+0 = Eine Gerade Summe = ? kann nur 0 sein nicht 1. => Usw.

RAID 3 ist inzwischen vom Markt verschwunden und wurde weitgehend durch RAID 5 ersetzt, bei dem die Parität gleichmäßig über alle Platten verteilt wird. Die dedizierte Paritätenfestplatte stellte einen Flaschenhals dar. Vor dem Übergang zu RAID 5 wurde RAID 3 zudem partiell durch RAID 4 verbessert, bei dem Ein-/Ausgabe-Operationen mit größeren Blockgrößen aus Geschwindigkeitsgründen standardisiert wurden.
Zusätzlich sei hier bemerkt, dass ein RAID-3-Verbund aus lediglich zwei Festplatten per Definition identisch ist mit einem RAID 1 aus zwei Festplatten.

 

RAID 4:

RAID 4 System

RAID 4 ähnelt RAID 3 da ebenfalls Paritätsinformationen berechnet und auf eine extra Festplatte geschrieben werden. Diese sind aber größere Datenblöcke (engl. stripes, chunks) anstatt einzelner Bytes, was die Gesamtperformance verbessert.. RAID 5 agiert ebenfalls so. Man betitelt RAID 4 auch gerne als "Zwischending" zwischen 3 und 5. Wie auch schon bei RAID 3, ist trotz der Chunk-Schreibweise die Paritätsplatte der Flaschenhals.

 

RAID 5: Leistung + Parität

  RAID 5 System

RAID 5 bietet sowohl gesteigerten Datendurchsatz beim Lesen von Daten als auch Redundanz bei relativ geringen Kosten und ist dadurch die beliebteste RAID-Variante. In schreibintensiven Umgebungen mit kleinen, nicht zusammenhängenden Änderungen ist RAID 5 nicht zu empfehlen, da bei zufälligen Schreibzugriffen der Durchsatz aufgrund des zweiphasigen Schreibverfahrens deutlich abnimmt (an dieser Stelle wäre eine RAID 0+1-Konfiguration vorzuziehen).

RAID 5 ist eine der kostengünstigsten Möglichkeiten, Daten auf mehreren Festplatten redundant zu speichern und dabei das Speichervolumen effizient zu nutzen. Dieser Vorteil kommt allerdings aufgrund hoher Controlleranforderungen und -preise oft erst bei mehr als vier Platten zum Tragen.

Die Nutzdaten werden wie bei RAID 0 auf alle Festplatten verteilt. Die "Paritätsinformationen" werden jedoch nicht wie bei RAID 4 auf einer Platte konzentriert, sondern ebenfalls verteilt.

RAID 6 / DP: Redundanz über zwei zusätzliche Festplatten

RAID 6 (Advanced Data Guarding) funktioniert ähnlich wie RAID 5, verkraftet aber den Ausfall von bis zu zwei Festplatten. Hier werden nicht ein, sondern zwei Fehlerkorrekturwerte berechnet und so über die Platten verteilt, dass Daten und Paritäten blockweise auf unterschiedlichen Platten liegen. Das bedeutet eine Anzahl von n+2 Festplatten brutto für einen Dateninhalt von n Festplatten netto, was allerdings schon bei wenigen Netto-Festplatten eine Kosten-Ersparnis gegenüber einfacher Spiegelung (RAID 1) darstellt.

Jedoch ist der Rechenaufwand bei den zugrundeliegenden XOR-Prozessen erheblich höher als bei RAID 5. Bei RAID 5 werden für ein Paritätsbit die Daten aus einer Daten-Zeile addiert (und bei erforderlicher Resynchronisation die Daten aus einer Daten-Zeile per Addition zurück resynchronisiert). Dagegen muss bei RAID 6 das Paritätsbit über mehrere Daten-Zeilen berechnet werden – die Resynchronisation, insbesondere bei zwei ausgefallenen Festplatten, erfordert einen Kalkül über Matrizen und Umkehrmatrizen aus der linearen Algebra (Codierungstheorie).

Ein RAID-6-Verbund benötigt mindestens vier Festplatten!

 

RAID TP:

RAID TP ist ein proprietäres RAID mit dreifacher Parität vom Hersteller easyRAID. Laut Herstellerangaben können bei RAID TP bis zu drei Festplatten ausfallen.

Die Datenblöcke und die Paritäten werden parallel jeweils auf die einzelnen physischen Festplatten geschrieben. Die drei Paritäten werden auf verschiedene Stripes auf unterschiedlichen Platten abgelegt. Der RAID-Triple-Parity-Algorithmus benutzt einen speziellen Code mit einem Hamming-Abstand von mindestens 4.

Hierzu benötigt man mindestens vier Festplatten. Die Kapazität errechnet sich aus Festplattenanzahl minus drei.

 

RAID 7:

Gleich wie RAID 5, allerdings wird im RAID Controller ein Echtzeitbetriebssystem verwendet. Außerdem werden schnellere Datenbusse eingesetzt, was zu deutlich schnelleren Übertragungsraten führt. RAID 7 wird aber eher selten verwendet weil es sehr teuer ist.

 

RAIDnm:

RAIDn verwendet das Prinzip der Generierung  mehrfacher Paritätsinformationen von RAID6. Das lässt sich dann dazu nutzen einen beliebig großen Ausfall von Festplatten aufzufangen. Derartig aufgebaute Arrays werden dann RAID nm,RAID (n,m) oder RAID n+m genannt. Faktor n beschreibt dann die Gesamtanzahl der verwendeten Festplatten und Faktor m die Anzahl der Platten die ausfallen dürfen.

JBOD:

"JBOD" steht für Just a Bunch Of Disks, also "Nur ein Haufen Platten".
Der Begriff wird verwendet in Abgrenzung zu RAID-Systemen, um anzugeben, wenn Festplatten nicht im Verbund, sondern einzeln betrieben werden. Viele Hardware-RAID-Controller sind in der Lage, die angeschlossenen Festplatten dem Betriebssystem einzeln zur Verfügung zu stellen; die RAID-Funktionen des Controllers werden dabei abgeschaltet, und er arbeitet als einfacher Festplatten-Controller.

Ein JBOD kann auch, unabhängig vom Controller, eine auf beliebige Arten an den Computer angeschlossene Anzahl von Festplatten bezeichnen. Mithilfe einer Volume Management Software kann ein solches JBOD zu einem Software-RAID zusammengeschaltet werden.
Bei bestimmten RAID-Tools, wie z. B. dem VIA RAID-TOOL, wird der Begriff JBOD fälschlicherweise auch gleichbedeutend mit NRAID verwendet.

 

 

RAID - Verbünde

Obwohl die oben genannten RAID Level 0,1 und 5 die Beliebtesten sind, gibt es auch die Möglichkeit verschiedene RAID Systeme in sogenannten RAID Verbünden zusammenzuschließen.  Daraus ergeben sich dann Namen wie RAID 10, RAID 30 oder RAID 50. Es gibt sie in über 20 unterschiedlichen Kombinationen.

 

RAID 10 oder RAID 0+1:

Dieser RAID-Level ist eine Kombination von RAID 1 (Mirroring) und RAID 0 (Striping) und hat Eigenschaften von Arrays - sicherheit und sequenzielle Performance. Manchmal wird dieser RAID-Level auch RAID 0 + 1 benannt.

Üblicherweise werden 4 Festplatten verwendet, da RAID 10 aus zwei Paaren gespiegelter Arrays besteht, die dann zu einem RAID 0 Array zusammengefasst werden. RAID 10 ist besonders geeignet, wenn große Dateien redundant gespeichert werden sollen; da keine Parity berechnet werden muss, sind Schreibzugriffe sehr schnell.

RAID Matrix:

Diese Technologie, welche von Intel stammt, ist eine sehr preiswerte und flexible RAID-Lösung. Das sogenannte Matrix RAID lässt die Mischung verschiedener RAID Typen auf einer Gruppe von Laufwerken. So kann man einen Teil seiner Laufwerke in einem RAID 1 System aufsetzen ( also die komplette Spiegelung) und auf performancelastigen Teilen RAID 0 einsetzen. In der Praxis heißt das: Die Betriebssystempartition inkl. wichtiger Daten wird per RAID 1 System geschützt und performancehungrige Programme laufen in einer anderen Partition RAID 0 mit höchstmöglicher Geschwindigkeit.

RAID 50 :

Das von AMI entwickelte RAID 50 empfielt sich wenn man Datensicherheit, schnelle Zugriffszeiten sowie hohe Transferraten benötigt werden. Man kann RAID 50 mit mindestens 6 Festplatten realisieren.

 

 

Zurück zur RAID Übersicht