Welcher RAID-Level für welche Anwendung?
Leserfrage: Gibt es eigentliche eine Faustregel, welches RAID-Level für welche Anwendung am besten geeignet ist? Ich denke da zum Beispiel an Datenbanken mit sehr vielen Zugriffen bei relativ kleinen Datenmengen oder an Webserver und als Extrem auf der anderen Seite Bild-Datenbanken, Audio-Server beim Rundfunk, Video-Archive mit sehr hohen Datenvolumen.
Antwort Doc Storage:
Faustregeln gibt es nicht, allerdings eignen sich die verschiedenen RAID-Arten schon allein wegen ihrer unterschiedlichen Funktionsweisen für verschiedene Anwendungsgebiete. Hier zunächst eine Übersicht:
RAID 0 (Striping)
Hierbei werden die zu schreibenden Daten in Blöcke aufgeteilt, die dann über die an der RAID-Gruppe beteiligten Laufwerke verteilt werden. Bei der Nutzung von mehreren Platten ergibt sich hieraus eine unübertroffene Leistungsfähigkeit, da die Kanäle zu den einzelnen Laufwerken (je nach Controller) parallel genutzt werden können. Stehen mehrere Controller zur Verfügung, kann die Leistung noch weiter gesteigert werden, indem die einzelnen Laufwerke über die verschiedenen Controller angesteuert werden.
Vorteile: RAID 0 bietet die höchsten Leistungen sowohl schreibend als auch lesend. Es existiert kein Overhead durch Paritätsberechnungen. Die gesamte Kapazität der Festplatten steht zur Verfügung. Die Technik ist sehr einfach zu installieren.
Nachteile: Es besteht kein Schutz der geschriebenen Daten. Fällt eine Festplatte aus, sind alle Daten im Array verloren und auch nicht wiederherzustellen. Damit eignet sich RAID 0 nicht für missionskritische Systeme.
Ideale Anwendung: RAID 0 eignet sich am besten für unkritische Systeme, in denen Daten sehr schnell geschrieben und gelesen werden müssen, beispielsweise in der Videobearbeitung.
RAID 1 (Spiegelung)
Die zu schreibenden Daten werden durch den Controller parallel auf jeweils zwei am Array beteiligte physikalische Laufwerke verteilt. Sollte eine Festplatte ausfallen, arbeitet das System so lange mit dem verbliebenen Laufwerk, bis das fehlerhafte ersetzt und automatisch wieder mit den bereits vorhandenen Daten aufgefüllt wird.
Vorteile: RAID 1 bietet hervorragende Leseleistungen bis hin zur doppelten Leistung einer einzelnen Platte und die Schreibleistung einer normalen Platte. Sollte eine HDD ausfallen, werden die bereits vorhandenen Daten einfach kopiert, ohne diese über einen Paritätsalgorithmus wiederherstellen zu müssen. Auch RAID 1 ist einfach zu installieren.
Nachteile: Die nutzbare entspricht nur der Hälfte der installierten Kapazität. Damit ist RAID 1 die teuerste aller RAID-Arten mit Schutzfunktion. RAID-1-Implementationen mit Software-Controllern ermöglichen nicht immer den Austausch eines beteiligten Laufwerkes im laufenden Betrieb. Dafür muss das System runtergefahren, die Platte getauscht und wieder angefahren werden. Für Installationen mit mehreren oder vielen Nutzern ist dies meist nicht akzeptabel, so dass hier immer auf einen Hardware-Controller zurückgegriffen werden sollte.
Ideale Anwendung: Missionskritische Systeme, denen die höchstmögliche Leistung abverlangt wird. Aber auch kleine Server, in denen lediglich zwei physikalische HDDs verbaut werden können.
RAID 5 (Parität)
Für das am häufigsten benutzte RAID 5 werden mindestens drei Festplatten benötigt, es funktioniert mit bis zu 16 Laufwerken. Die zu schreibenden Daten werden in Blöcke unterteilt, wobei immer so viele Blöcke wie Laufwerke vorhanden sind minus eins geschrieben werden. In den jeweils letzten Block werden die aus den Datenblöcken errechneten Paritätsdaten geschrieben. Pro Sequenz »wandert« dieser Paritätsblock zum jeweils nächsten Laufwerk, so dass auf jeder physikalischen Platte immer genau gleich viele Paritätsblöcke vorhanden sind. Sollte eine Platte ausfallen, lassen sich die dort abhanden gekommenen Daten aus den auf den verbliebenen HDDs mithilfe der Paritätsinformationen rekonstruieren. Somit übersteht RAID 5 wie RAID 1 den Ausfall eines Laufwerkes zur gleichen Zeit.
Vorteile: Leseoperationen sind sehr schnell, je nach Verteilung der Daten bis zur (n-1)-fachen Anzahl der beteiligen Laufwerke. Sollte ein Laufwerk ausfallen, sind immer noch alle Daten im Zugriff, auch wenn die Daten auf eine neue Festplatte rekonstruiert werden. Die nutzbare Kapazität einer RAID-5-Gruppe entspricht derjenigen der (n-1)-fachen Anzahl der Laufwerke und ist damit die höchste aller hier besprochenen RAID-Arten.
Nachteile: Die Schreibleistung ist im Vergleich zu RAID 1 signifikant niedriger, da mit jedem Datenblock auch die Paritätsinformationen errechnet und geschrieben werden müssen. Dieser Algorithmus hat auch einen Einfluss auf die Leistung des Arrays, wenn eine HDD ausgefallen ist und rekonstruiert werden muss. Diese Rekonstruktion (Rebuild) kann bei heute üblichen Platten von 4 TByte Kapazität auch schon einmal über einen Tag und deutlich länger in Anspruch nehmen. Wie RAID 1 übersteht RAID 5 den Ausfall eines Laufwerkes im Array. Sollte danach oder während der Rekonstruktion der ausgefallenen Platte eine weitere offline gehen, sind alle gespeicherten Daten verloren.
Ideale Anwendung: RAID 5 eignet sich für alle Allround-Systeme mit dem Anspruch effizienter Nutzung des installierten Speichers und nicht allzu hohen Leistungsansprüchen.
RAID 6 (Doppelte Parität)
Die Funktion von RAID 6 entspricht weitestgehend derjenigen von RAID 5, mit dem Unterschied, dass hier zwei Paritätsinformationen auf zwei unterschiedliche Festplatten geschrieben werden. Somit muss eine RAID-6-Gruppe aus mindestens vier Laufwerken bestehen.
Vorteile: Wie bei auch RAID 5, sind hier die Leseoperationen relativ schnell. Durch das Zweifache Ablegen der Paritätsinformationen sind die Schreiboperationen allerdings mindestens genauso langsam wie die bei RAID 5. Größter Vorteil von RAID 6: Es können zwei HDDs gleichzeitig ausfallen, ohne dass die Daten im betroffenen Array verloren gehen. Somit ist RAID 6 wesentlich sicherer als RAID 5.
Nachteile: Durch die doppelte Ablage der Paritätsinformationen können Schreibvorgänge ein Fünftel bis ein Viertel langsamer sein als bei RAID 5 auf demselben Controller. Dadurch verlängert sich auch die Rekonstruktion eines Laufwerkes im Vergleich entsprechend.
Ideale Anwendung: RAID 6 empfiehlt sich, wenn in einem Allround-System sehr kapazitätsstarke HDDs eingesetzt werden und die Daten auch während der Rekonstruktion eventuell fehlerhafter Platten geschützt sein sollen.
Natürlich gibt es jetzt auch noch Striping und die nicht ganz so verbreiteten RAID 3, 4 und 7. Diese sind kaum zu finden, und die Auswirkungen von Striping sind bei heutigen Controllern und Platten eher marginal, hier also zu vernachlässigen.
Entscheidung meist wirtschaftlich
Ich weiß, das ist sehr generisch, allerdings geht es aufgrund der Vielzahl von Anwendungen und Einsatzgebieten kaum genauer. In der Regel ist es eine wirtschaftliche Entscheidung und von dem nötigen Schutz. RAID 0 ist am schnellsten und in Kombination mit RAID 1 auch sicher. Ein RAID 10 ist allerdings auch teuer, daher läuft es in der Praxis auf RAID 6 und in größeren Systemen auf ein RAID 6 hinaus. Für Archive und für Arrays mit vielen HDDs empfiehlt sich der Einsatz von Erasure-Coding. Über die Technik habe ich hier schon geschrieben und von den Kollegen gibt es auch ein Webinar dazu. Falls es noch Klärungsbedarf gibt: einfach nachfragen...
Gruß
Doc Storage
- Doc Storage: Festplatte mit schlechtem Zustandsstatus noch zu gebrauchen?
- Doc Storage: High-Capacity-HDDs und RAID-Rebuild
- Doc Storage: Verlängert ein schonender Schreibzyklus die HDD-Lebensdauer?
- Doc Storage: Was ist bei lange eingelagerten Festplatten zu beachten?
- Doc Storage: Wie lange kann man HDDs ungenutzt lagern?