Obwohl es seit über 50 Jahren existiert, ist RAID immer noch sehr beliebt, insbesondere in Unternehmensumgebungen. Alles in allem ist es eine ziemliche Leistung für jede Technologie, so lange relevant zu sein.

Wenn wir uns heute auf den Zustand von RAID konzentrieren, sind einige RAID-Level definitiv relevanter als andere. Insbesondere RAID 5 ist eine der beliebtesten RAID-Versionen der letzten zwei Jahrzehnte.

Da die Festplattengrößen exponentiell gewachsen sind, stellt sich jedoch die Frage. Ist RAID 5 noch zuverlässig? Um diese Frage zu beantworten, sollten wir zuerst darüber sprechen, was genau RAID 5 ist, seine Arbeitsmechanismen, Anwendungen und Fehler.

RAID-Terminologie

RAID 5 verwendet verteilte Parität mit verschachtelten Blöcken. Um dies zu verstehen, sollten wir mit den Grundlagen von RAID beginnen.

Rnicht notwendig EINESsein Radius ichabhängig Heyisks (RAID) ist im Grunde eine Datenspeichertechnologie, die verwendet wird, um durch Datenredundanz oder Fehlertoleranz Schutz vor Festplattenausfällen zu bieten und gleichzeitig die Gesamtleistung der Festplatte zu verbessern.

RAID-Systeme wenden Techniken wie Striping, Spiegelung und Parität an. Abisolieren verteilt logisch aufeinanderfolgende Datenblöcke auf alle Festplatten in einem Array, was zu einer besseren Lese-/Schreibleistung führt.

Äquivalent, im Zusammenhang mit RAID, sind Wiederherstellungsdaten, die auf eine dedizierte Paritätsfestplatte geschrieben oder auf alle Festplatten im Array verteilt werden. Wenn eine Festplatte im Array ausfällt, können diese Paritätsdaten zusammen mit den Daten auf den verbleibenden Arbeitslaufwerken verwendet werden, um die verlorenen Daten zu rekonstruieren.

Wie funktioniert RAID 5?

Verwendung von RAID-5-Arrays Streifen auf Blockebene mit verteilte Parität. Da mindestens zwei Festplatten für Striping und ein zusätzlicher Platz für Parity benötigt werden, benötigen RAID 5 Arrays mindestens 3 Festplatten. Nehmen wir als Beispiel ein 4-Festplatten-RAID-5-Array, um besser zu verstehen, wie es funktioniert.

Beim Schreiben an die Tafel a Blockgröße von Daten (A1) wird auf die erste Platte geschrieben. Dieses Datenelement wird auch als a bezeichnet Streifen. Die Blockgröße wird aufgerufen Stückgrößeund sein Wert variiert, da er vom Benutzer festgelegt werden kann.

Raid-5-Job

Mit der Schreiboperation fortfahrend, wird das nächste logisch aufeinanderfolgende Datenelement (A2) auf die zweite Platte geschrieben und dasselbe auf die dritte (A3). Da Datenblöcke über diese drei Bahnen verteilt sind, werden sie gemeinsam als a bezeichnet Film.

Streifengröße, wie der Name schon sagt, bezieht sich auf die Summe der Größe aller Streifen oder Stücke im Streifen. Im Allgemeinen verwenden Hardware-RAID-Controller die Stripe-Größe, aber einige RAID-Implementierungen verwenden auch die Chunk-Größe.

Hardware-Raid-Controller

Wiederum fortfahrend, nachdem die Daten auf den Platten (A1, A2, A3) gestreift wurden, werden die Paritätsdaten berechnet und als Block in Blockgröße auf der verbleibenden Platte (Ap) gespeichert. Damit ist eine vollständige Spur von Daten geschrieben worden.

In unserem Beispiel wird derselbe Vorgang noch einmal wiederholt, da die Daten auf drei Festplatten aufgeteilt werden, während die vierte Festplatte Paritätsdaten speichert. Vereinfacht gesagt wird dies so lange fortgesetzt, bis der Schreibvorgang abgeschlossen ist.

Aber es gibt noch ein paar Dinge, die wir hier behandeln müssen, wie die tatsächliche Berechnung der Paritätsdaten und das Layout der Paritätsdaten und Blöcke in der Tabelle. Konzentrieren wir uns also auf diese im nächsten Abschnitt.

Parität in RAID 5

Unterschiedliche RAID-Level verwenden unterschiedliche Algorithmen zur Berechnung von Paritätsdaten. RAID 5 verwendet speziell die Exklusives ODER (XOR) Operator für jedes Datenbyte.

XOR gibt eine wahre Ausgabe zurück, wenn nur eine der Eingaben wahr ist. Wenn beide Eingaben wahr (1,1) oder falsch (0,0) sind, ist die Ausgabe falsch. Die folgende Tabelle und das folgende Beispiel sollen dies besser demonstrieren.

Erste EinführungZweiter EingangProduktion
000
011
101
110

Gehen wir zurück zu unserem Beispiel von vorhin und schauen uns den ersten Streifen an. Nehmen wir an, das erste Datenbyte in Filmen ist:

A1 – 10111001
A2 – 11001010
A3 – 10011011

Durch Ausführen einer A1 XOR A2-Operation erhalten wir die Ausgabe 01110011. Wenn wir eine weitere XOR-Operation mit dieser Ausgabe und A3 durchführen, erhalten wir die Paritätsdaten (Ap), die als 11101000 herauskommen.

Angenommen, eine der Festplatten im Array (z. B. Festplatte 2) fällt aus. Wir können eine A1 XOR A3-Operation durchführen, um 00100010 als Ausgabe zu erhalten. Wenn wir mit dieser Ausgabe und den Paritätsdaten eine weitere XOR-Operation durchführen, erhalten wir die folgende Ausgabe:

00100010
11101000
11001010

Damit haben wir das erste Datenbyte auf Festplatte 2 rekonstruiert. Kurz gesagt, Paritätsdaten bieten Fehlertoleranz und schützen Ihre Daten im Falle eines Festplattenausfalls. Allerdings hat diese Redundanz ihre Grenzen, da RAID 5 nur vor einem Ausfall einer einzelnen Festplatte schützt. Wenn zwei Laufwerke gleichzeitig ausfallen, gehen alle Daten verloren.

Schließlich gibt es noch die Frage des Datenlayouts in der Tabelle. Im Gegensatz zu den RAID-Stufen 2, 3 und 4, die eine dedizierte Paritätsfestplatte verwenden, verwendet RAID 5 eine verteilte Parität. Das bedeutet, dass Paritätsblöcke über das Array verteilt werden und nicht auf einem einzigen Laufwerk gespeichert werden.

Unser Beispiel von früher zeigt ein asynchrones Layout von links nach rechts, aber dies kann sich abhängig von einigen Faktoren ändern. Beispielsweise können Datenblöcke von links nach rechts oder von rechts nach links in das Array geschrieben werden. Folglich kann der Paritätsblock am Anfang oder am Ende der Lane liegen.

Bei einem synchronen Layout bestimmt die Position des Paritätsblocks auch, wo die nächste Spur beginnt. Beispielsweise ist die folgende Tabelle als linkssynchron eingerichtet, was bedeutet, dass Daten von links nach rechts geschrieben werden. Außerdem bestimmt der Paritätsblock (Ap), wo der nächste Streifen (B1) beginnt, und so weiter.

Left Synchron Array Raid 5

Sollten Sie RAID 5 verwenden?

Raid-Rack-Server

RAID 5 bietet sowohl Leistungssteigerungen durch Striping als auch Fehlertoleranz durch Parität. Und im Gegensatz zu niedrigeren RAID-Leveln muss es sich nicht mit dem Engpass einer dedizierten Paritätsfestplatte auseinandersetzen. Dies machte es in den 2000er Jahren sehr beliebt, insbesondere in Produktionsumgebungen.

RAID 5 hatte jedoch immer einen kritischen Fehler, da es nur vor dem Ausfall einer einzelnen Festplatte schützt. Theoretisch ist der Ausfall von zwei Platten nacheinander äußerst unwahrscheinlich. Aber in realen Anwendungen sieht es anders aus.

Zunächst einmal sind die Festplattengrößen exponentiell gewachsen, während sich die Lese-/Schreibgeschwindigkeiten nicht wesentlich verbessert haben. Aufgrund dieses Unterschieds dauert es lange, das Array neu zu erstellen, wenn eine Festplatte ausfällt. Je nach Größe und Spezifikationen des Arrays kann dies Stunden bis Tage dauern.

viele --- hart

Dann kaufen die Leute Platten oft in Sets. Wenn Sie Laufwerke derselben Marke derselben Arbeitslast und Umgebung aussetzen, steigt die Wahrscheinlichkeit, dass sie gleichzeitig ausfallen.

Aber nehmen wir an, nur eine Festplatte ist ausgefallen. Wenn Sie regelmäßig Scheiben schleifen, sind Sie wahrscheinlich gut. Wenn Sie jedoch nicht nach Fehlern gesucht haben, besteht die Gefahr, dass Sie während des Wiederherstellungsprozesses auf URE stoßen, da gerade eine der Festplatten im Array ausgefallen ist.

Nicht behebbare Lesefehler (URE) sind ein großes Problem beim Neuerstellen von Tabellen, da ein einziges MB nicht lesbarer Daten die gesamte Tabelle unbrauchbar machen kann. Dies liegt an der Funktionsweise der meisten RAID-Setups.

Einige RAID-Implementierungen wie ZFS-RAID-Software und Linux-RAID-Software sowie einige Hardware-Controller markieren den Sektor als fehlerhaft und setzen den Neuaufbau fort. Die meisten Hardware-RAID-Controller stoppen jedoch einfach die Wiederherstellung und markieren das gesamte Array als ausgefallen.

Der Grund dafür ist, dass es besser ist, das Array zu stoppen, als eine Beschädigung der Daten zu riskieren. Dies setzt voraus, dass Sie entweder aus einer Sicherung wiederherstellen oder die Daten von jedem Laufwerk einzeln wiederherstellen.

Raid 6-Array 1

Wenn Sie all diese Faktoren kombinieren, ist es nicht schwer zu verstehen, warum RAID 5 in den letzten Jahren in Ungnade gefallen ist. Aus diesem Grund werden heutzutage andere RAID-Versionen wie RAID 6 oder ZFS RAID-Z2 bevorzugt, insbesondere für größere Arrays, bei denen die Wiederherstellungszeiten länger sind und die Gefahr besteht, dass mehr Daten verloren gehen.

Das bedeutet jedoch nicht, dass RAID 5 bereits irrelevant ist. Festplattenhersteller haben diese Dinge berücksichtigt und ihre Laufwerke verbessert, wodurch die Häufigkeit des Auftretens von URE in den letzten Jahren exponentiell reduziert wurde. Wir empfehlen generell, andere RAID-Level zu wählen, aber wenn Sie trotzdem mit RAID 5 weitermachen möchten, sollten Sie dies nur bei kleinen Arrays tun.

Abschließend noch einige Anforderungen und wissenswerte Dinge, wenn Sie vorhaben, ein RAID 5-Array zu erstellen:

  • Wie bereits erwähnt, benötigt ein RAID 5-Array mindestens 3 Laufwerke. Dies liegt daran, dass mindestens 2 Laufwerke für das Striping benötigt werden und ein zusätzlicher Plattenplatz zum Speichern von Paritätsdaten benötigt wird.
  • Der nutzbare Speicherplatz in einem RAID 5-Setup kann durch (N – 1) x (kleinste Festplattengröße) berechnet werden. Sie sollten Laufwerke gleicher Größe verwenden, da bei einer uneinheitlichen Installation das kleinere Laufwerk einen erheblichen Engpass verursacht.
  • RAID 5 bietet eine hervorragende Leseleistung, da Striping das gleichzeitige Lesen von Daten von mehreren Laufwerken ermöglicht. Aus dem gleichen Grund ist die Schreibleistung jedoch nicht so groß, da Paritätsinformationen auch für mehrere Platten geschrieben werden müssen.
  • RAID 5 kann über Softwareanwendungen konfiguriert werden, aber es ist am besten, Hardware-RAID-Controller für ein RAID 5-Array zu verwenden, da die Leistung mit Softwareimplementierungen abnimmt.
  • Schließlich ist RAID-Redundanz nicht dasselbe wie Backups. Der Zweck von RAID ist einfach der Schutz vor Festplattenausfällen. Es gibt viele Gründe für separate Offsite-Backups, von Malware bis hin zu menschlichen Fehlern und Unfällen.

Similar Posts