Was sind die verschiedenen weit verbreiteten RAID-Levels und wann sollte ich sie in Betracht ziehen?


181

Dies ist eine kanonische Frage zu RAID-Levels.

Was sind:

  • Welche RAID-Level werden normalerweise verwendet (einschließlich der RAID-Z-Familie)?
  • Bereitstellungen sind sie häufig in gefunden?
  • Vorteile und Fallstricke von jedem?

10
@ erimar77 Der Zweck des StackExchange-Netzwerks besteht darin, das gesamte Wissen zu dem angegebenen Thema innerhalb des SE-Netzwerks zu sammeln . Das bedeutet, dass Daten auf Wikipedia für die Mission nutzlos sind. Ich bin ziemlich gut mit RAID vertraut, daher brauche ich die Antwort nicht, aber es soll eine kanonische Frage sein. Eine kononische Frage ist eine definitive Antwort auf ein gemeinsames Problem, auf das wir alle Duplikate verweisen können. "Einfach googeln" oder "Auf Wikipedia" sind keine akzeptablen Antworten. Der Artikel auf Wikipedia ist allerdings sehr gut.
MDMarra

2
Auf Super User kopiert kann ich dort VTC als Duplikat weitergeben. Bitte kopieren Sie die Antwort an Super User (oder lassen Sie mich sie erst einmal kopieren).
Hennes

Antworten:


197

RAID: Warum und wann

RAID steht für Redundant Array of Independent Disks (einige werden mit "Inexpensive" gelehrt, um anzuzeigen, dass es sich um "normale" Festplatten handelt. In der Vergangenheit gab es intern redundante Festplatten, die sehr teuer waren. Da diese nicht mehr verfügbar sind, hat sich das Akronym angepasst.)

Auf der allgemeinsten Ebene ist ein RAID eine Gruppe von Datenträgern, die dieselben Lese- und Schreibvorgänge ausführen. SCSI-E / A wird auf einem Volume ("LUN") ausgeführt und diese werden auf die zugrunde liegenden Datenträger so verteilt, dass eine Leistungssteigerung und / oder eine Redundanzsteigerung eintritt. Die Leistungssteigerung ist eine Funktion des Striping: Daten werden auf mehrere Festplatten verteilt, damit Lese- und Schreibvorgänge alle E / A-Warteschlangen der Festplatten gleichzeitig nutzen können. Redundanz ist eine Funktion der Spiegelung. Ganze Datenträger können als Kopien aufbewahrt werden, oder einzelne Streifen können mehrfach beschrieben werden. Bei einigen RAID-Typen wird Redundanz erzielt, anstatt Daten Bit für Bit zu kopieren, indem spezielle Streifen mit Paritätsinformationen erstellt werden, mit denen bei einem Hardwarefehler verloren gegangene Daten wiederhergestellt werden können.

Es gibt verschiedene Konfigurationen, die unterschiedliche Stufen dieser Vorteile bieten, die hier behandelt werden, und jede ist auf Leistung oder Redundanz ausgerichtet.

Ein wichtiger Aspekt bei der Beurteilung, welche RAID-Stufe für Sie geeignet ist, hängt von den Vorteilen und den Hardwareanforderungen ab (z. B. Anzahl der Laufwerke).

Ein weiterer wichtiger Aspekt der meisten dieser RAID-Typen (0,1,5) ist, dass sie nicht die Integrität Ihrer Daten gewährleisten, da sie von den tatsächlich gespeicherten Daten abstrahiert sind. RAID schützt also nicht vor beschädigten Dateien. Wenn eine Datei auf irgendeine Weise beschädigt wird , wird die Beschädigung gespiegelt oder paritiert und unabhängig davon auf die Festplatte übertragen. Allerdings RAID-Z hat Anspruch auf Dateiebene Integrität Ihrer Daten zur Verfügung zu stellen .


Direkt angeschlossenes RAID: Software und Hardware

RAID kann auf zwei Ebenen auf direkt angeschlossenem Speicher implementiert werden: Hardware und Software. Bei echten Hardware-RAID-Lösungen gibt es einen dedizierten Hardware-Controller mit einem Prozessor, der für RAID-Berechnungen und -Verarbeitung vorgesehen ist. Außerdem verfügt es normalerweise über ein batteriegepuffertes Cache-Modul, sodass Daten auch nach einem Stromausfall auf die Festplatte geschrieben werden können. Dies hilft, Inkonsistenzen zu beseitigen, wenn Systeme nicht sauber heruntergefahren werden. Im Allgemeinen sind gute Hardware-Controller leistungsstärker als ihre Software-Gegenstücke, sie verursachen jedoch auch erhebliche Kosten und erhöhen die Komplexität.

Software-RAID erfordert normalerweise keinen Controller, da kein dedizierter RAID-Prozessor oder ein separater Cache verwendet wird. In der Regel werden diese Vorgänge direkt von der CPU ausgeführt. In modernen Systemen verbrauchen diese Berechnungen nur minimale Ressourcen, obwohl eine marginale Latenzzeit auftritt. RAID wird entweder direkt vom Betriebssystem oder bei FakeRAID von einem Faux-Controller gehandhabt .

Wenn sich jemand für Software-RAID entscheidet, sollte er FakeRAID meiden und das systemeigene Paket für sein System verwenden, z. B. Dynamic Disks unter Windows, mdadm / LVM unter Linux oder ZFS unter Solaris, FreeBSD und anderen verwandten Distributionen . FakeRAID verwendet eine Kombination aus Hardware und Software, die zum ersten Auftreten von Hardware-RAID führt, jedoch zur tatsächlichen Leistung von Software-RAID. Außerdem ist es häufig äußerst schwierig, das Array auf einen anderen Adapter zu verschieben (falls das Original ausfällt).


Zentraler Speicher

Der andere häufig vorkommende Ort, an dem RAID verwendet wird, sind zentralisierte Speichergeräte, die üblicherweise als SAN (Storage Area Network) oder NAS (Network Attached Storage) bezeichnet werden. Diese Geräte verwalten ihren eigenen Speicher und ermöglichen angeschlossenen Servern den Zugriff auf den Speicher auf verschiedene Arten. Da mehrere Workloads auf denselben wenigen Platten enthalten sind, ist im Allgemeinen ein hohes Maß an Redundanz wünschenswert.

Der Hauptunterschied zwischen einem NAS und einem SAN besteht in Exporten auf Block- und Dateisystemebene. Ein SAN exportiert ein ganzes "Block-Gerät", z. B. eine Partition oder ein logisches Volume (einschließlich derer, die auf einem RAID-Array erstellt wurden). Beispiele für SANs sind Fibre Channel und iSCSI. Ein NAS exportiert ein "Dateisystem" wie eine Datei oder einen Ordner. Beispiele für NASs sind CIFS / SMB (Windows File Sharing) und NFS.


RAID 0

Gut, wenn: Schnelligkeit um jeden Preis!

Schlecht, wenn: Sie sich um Ihre Daten kümmern

RAID0 (auch bekannt als Striping) wird manchmal als "die Menge an Daten bezeichnet, die bei Ausfall eines Laufwerks verbleibt". Es läuft wirklich gegen den Strich von "RAID", wobei "R" für "Redundant" steht.

RAID0 nimmt Ihren Datenblock, teilt ihn in so viele Teile auf, wie Sie über Festplatten verfügen (2 Festplatten → 2 Festplatten, 3 Festplatten → 3 Festplatten), und schreibt dann jedes Teil der Daten auf eine separate Festplatte.

Dies bedeutet, dass ein einzelner Festplattenfehler das gesamte Array zerstört (da Sie Teil 1 und Teil 2, aber keinen Teil 3 haben), aber einen sehr schnellen Festplattenzugriff ermöglicht.

Es wird nicht oft in Produktionsumgebungen verwendet, kann jedoch in Situationen verwendet werden, in denen nur temporäre Daten vorhanden sind, die ohne Auswirkungen verloren gehen können. Es wird häufig zum Zwischenspeichern von Geräten (z. B. einem L2Arc-Gerät) verwendet.

Der insgesamt nutzbare Speicherplatz ergibt sich aus der Summe aller Festplatten im Array (z. B. 3 x 1 TB Festplatten = 3 TB Speicherplatz).

RAID 1


RAID 1

Gut, wenn: Sie eine begrenzte Anzahl von Festplatten haben, aber Redundanz benötigen

Schlecht, wenn: Sie viel Stauraum benötigen

RAID 1 (auch als Spiegelung bezeichnet) nimmt Ihre Daten auf und dupliziert sie identisch auf zwei oder mehr Datenträgern (in der Regel jedoch nur auf zwei Datenträgern). Wenn mehr als zwei Festplatten verwendet werden, werden auf jeder Festplatte dieselben Informationen gespeichert (sie sind alle identisch). Dies ist die einzige Möglichkeit, Datenredundanz sicherzustellen, wenn Sie weniger als drei Festplatten haben.

RAID 1 verbessert manchmal die Leseleistung. Einige Implementierungen von RAID 1 lesen von beiden Festplatten, um die Lesegeschwindigkeit zu verdoppeln. Einige lesen nur von einer der Festplatten, was keine zusätzlichen Geschwindigkeitsvorteile bietet. Andere lesen dieselben Daten von beiden Festplatten und stellen so die Integrität des Arrays bei jedem Lesevorgang sicher. Dies führt jedoch zu derselben Lesegeschwindigkeit wie eine einzelne Festplatte.

Es wird normalerweise auf kleinen Servern mit sehr geringer Festplattenerweiterung verwendet, z. B. auf 1-HE-Servern, auf denen möglicherweise nur zwei Festplatten Platz finden, oder auf Arbeitsstationen, die Redundanz erfordern. Aufgrund des hohen Overheads an "verlorenem" Speicherplatz kann es bei Laufwerken mit geringer Kapazität, hoher Geschwindigkeit (und hohen Kosten) unerschwinglich sein, da Sie doppelt so viel Geld ausgeben müssen, um den gleichen Grad an nutzbarem Speicherplatz zu erhalten.

Der insgesamt nutzbare Festplattenspeicher entspricht der Größe der kleinsten Festplatte im Array (z. B. 2 Festplatten mit 1 TB = 1 TB Speicherplatz).

RAID 1


RAID 1E

Der 1E- RAID-Level ähnelt RAID 1, da Daten immer auf (mindestens) zwei Festplatten geschrieben werden. Im Gegensatz zu RAID1 ist jedoch eine ungerade Anzahl von Festplatten möglich, indem die Datenblöcke einfach zwischen mehreren Festplatten verschachtelt werden.

Die Leistungsmerkmale sind ähnlich wie bei RAID1, die Fehlertoleranz ist ähnlich wie bei RAID 10. Dieses Schema kann auf eine ungerade Anzahl von Festplatten mit mehr als drei erweitert werden (möglicherweise als RAID 10E bezeichnet, obwohl dies selten der Fall ist).

RAID 1E


RAID 10

Gut wenn: Sie Geschwindigkeit und Redundanz wollen

Schlecht, wenn: Sie es sich nicht leisten können, die Hälfte Ihres Speicherplatzes zu verlieren

RAID 10 ist eine Kombination aus RAID 1 und RAID 0. Die Reihenfolge von 1 und 0 ist sehr wichtig. Angenommen, Sie haben 8 Festplatten, es werden 4 RAID 1-Arrays erstellt, und dann wird ein RAID 0-Array auf die 4 RAID 1-Arrays angewendet. Es sind mindestens 4 Festplatten erforderlich, und zusätzliche Festplatten müssen paarweise hinzugefügt werden.

Dies bedeutet, dass eine Festplatte von jedem Paar ausfallen kann. Wenn Sie also Sätze A, B, C und D mit den Platten A1, A2, B1, B2, C1, C2, D1, D2 haben, können Sie eine Platte aus jedem Satz (A, B, C oder D) verlieren und haben immer noch ein funktionierendes Array.

Wenn Sie jedoch zwei Datenträger aus demselben Satz verlieren, geht das Array vollständig verloren. Sie können bis zu 50% der Festplatten verlieren (dies ist jedoch nicht garantiert).

Bei RAID 10 ist hohe Geschwindigkeit und hohe Verfügbarkeit garantiert.

RAID 10 ist eine sehr verbreitete RAID-Stufe, insbesondere bei Laufwerken mit hoher Kapazität, bei denen ein Ausfall einer einzelnen Festplatte einen Ausfall einer zweiten Festplatte wahrscheinlicher macht, bevor das RAID-Array wiederhergestellt wird. Während der Wiederherstellung ist der Leistungsabfall viel geringer als bei RAID 5, da nur von einem Laufwerk gelesen werden muss, um die Daten zu rekonstruieren.

Der verfügbare Speicherplatz beträgt 50% des gesamten Speicherplatzes. (zB 8x 1 TB Laufwerke = 4 TB nutzbarer Speicherplatz). Wenn Sie unterschiedliche Größen verwenden, wird von jeder Festplatte nur die kleinste Größe verwendet.

Es ist erwähnenswert, dass der aufgerufene Software-RAID-Treiber des Linux-Kernels md RAID 10-Konfigurationen mit einer ungeraden Anzahl von Laufwerken ermöglicht , z. B. RAID 10 mit 3 oder 5 Festplatten.

RAID 10


RAID 01

Gut wenn: nie

Schlimm wenn: immer

Dies ist die Umkehrung von RAID 10. Es werden zwei RAID 0-Arrays erstellt und anschließend ein RAID 1 darüber gelegt. Dies bedeutet, dass Sie eine Diskette aus jedem Satz verlieren können (A1, A2, A3, A4 oder B1, B2, B3, B4). In kommerziellen Anwendungen ist dies sehr selten der Fall, bei Software-RAID ist dies jedoch möglich.

Um ganz klar zu sein:

  • Wenn Sie ein RAID10-Array mit 8 Festplatten haben und eine Festplatte stirbt (wir nennen es A1), haben Sie 6 redundante Festplatten und eine Festplatte ohne Redundanz. Wenn eine andere Festplatte ausfällt, besteht eine Wahrscheinlichkeit von 85%, dass Ihr Array noch funktioniert.
  • Wenn Sie ein RAID01-Array mit 8 Festplatten haben und eine davon stirbt (wir nennen es A1), haben Sie 3 redundante Festplatten und 4 ohne Redundanz. Wenn eine andere Festplatte ausfällt, besteht eine 43% ige Chance, dass Ihr Array noch funktioniert.

Es bietet keine zusätzliche Geschwindigkeit über RAID 10, aber wesentlich weniger Redundanz und sollte auf jeden Fall vermieden werden.


RAID 5

Gut, wenn: Sie ein Gleichgewicht zwischen Redundanz und Speicherplatz wünschen oder eine meist zufällige Lese-Workload haben möchten

Schlecht, wenn: Sie eine hohe zufällige Schreiblast oder große Laufwerke haben

RAID 5 ist seit Jahrzehnten das am häufigsten verwendete RAID-Level. Es bietet die Systemleistung aller Laufwerke im Array (mit Ausnahme von kleinen zufälligen Schreibvorgängen, für die ein geringer Overhead anfällt). Es verwendet eine einfache XOR-Operation, um die Parität zu berechnen. Bei einem Ausfall eines einzelnen Laufwerks können die Informationen aus den verbleibenden Laufwerken mithilfe der XOR-Operation für die bekannten Daten rekonstruiert werden.

Leider ist der Wiederherstellungsprozess im Falle eines Laufwerksausfalls sehr E / A-intensiv. Je größer die Laufwerke im RAID sind, desto länger dauert die Wiederherstellung und desto höher ist die Wahrscheinlichkeit, dass ein zweites Laufwerk ausfällt. Da große langsame Laufwerke sowohl viel mehr Daten zum Wiederherstellen als auch viel weniger Leistung benötigen, wird die Verwendung von RAID 5 mit einer Drehzahl von 7200 U / min oder weniger normalerweise nicht empfohlen.

Das vielleicht kritischste Problem bei RAID 5-Arrays in Consumer-Anwendungen ist, dass bei einer Gesamtkapazität von mehr als 12 TB ein Ausfall nahezu garantiert ist. Dies liegt daran, dass die Rate der nicht behebbaren Lesefehler (URE) von SATA-Consumer-Laufwerken 1 pro 10 14 Bit oder ~ 12,5 TB beträgt.

Wenn wir ein Beispiel für ein RAID 5-Array mit sieben 2-TB-Laufwerken nehmen: Wenn ein Laufwerk ausfällt, sind noch sechs Laufwerke übrig. Um das Array neu zu erstellen, muss der Controller sechs Laufwerke mit jeweils 2 TB lesen. Betrachtet man die Abbildung oben, ist es fast sicher, dass eine weitere URE stattfinden wird, bevor der Wiederaufbau abgeschlossen ist. In diesem Fall gehen das Array und alle darauf befindlichen Daten verloren.

Der URE- / Datenverlust- / Array-Fehler mit RAID 5-Problemen bei Consumer-Laufwerken wurde jedoch etwas gemildert, da die meisten Festplattenhersteller die URE-Bewertungen ihrer neueren Laufwerke auf eins von 10 15 Bit erhöht haben . Lesen Sie vor dem Kauf wie immer die technischen Daten!

Es ist auch unerlässlich, RAID 5 hinter einem zuverlässigen (batteriegepufferten) Schreibcache zu platzieren. Dies vermeidet den Overhead für kleine Schreibvorgänge sowie flockiges Verhalten, das bei einem Fehler in der Mitte eines Schreibvorgangs auftreten kann.

RAID 5 ist die kostengünstigste Lösung, um einem Array redundanten Speicher hinzuzufügen, da nur eine Festplatte verloren gehen muss (z. B. 12 x 146 GB Festplatten = 1606 GB nutzbarer Speicherplatz). Es sind mindestens 3 Festplatten erforderlich.

RAID 5


RAID 6

Gut, wenn: Sie RAID 5 verwenden möchten, Ihre Festplatten jedoch zu groß oder zu langsam sind

Schlecht, wenn: Sie einen hohen zufälligen Schreibaufwand haben

RAID 6 ähnelt RAID 5, verwendet jedoch zwei Festplatten im Wert von Parität anstelle von nur einer (die erste ist XOR, die zweite ist LSFR), sodass Sie ohne Datenverlust zwei Festplatten aus dem Array verlieren können. Die Schreibstrafe ist höher als bei RAID 5 und Sie haben eine Festplatte weniger Speicherplatz.

Es ist zu bedenken, dass bei einem RAID 6-Array möglicherweise ähnliche Probleme auftreten wie bei einem RAID 5. Größere Laufwerke verursachen längere Wiederherstellungszeiten und latentere Fehler, was schließlich zu einem Ausfall des gesamten Arrays und zum Verlust aller Daten führt, bevor eine Wiederherstellung abgeschlossen ist.

RAID 6


RAID 50

Gut, wenn: Sie viele Festplatten in einem einzigen Array haben müssen und RAID 10 aus Kapazitätsgründen nicht in Frage kommt

Schlecht, wenn: Sie über so viele Festplatten verfügen, dass viele gleichzeitige Fehler möglich sind, bevor die Neuerstellung abgeschlossen ist, oder wenn Sie nicht über viele Festplatten verfügen

RAID 50 ist eine verschachtelte Ebene, ähnlich wie RAID 10. Es kombiniert zwei oder mehr RAID 5-Arrays und verteilt Daten in einem RAID 0. Dies bietet sowohl Leistung als auch Redundanz für mehrere Festplatten, sofern mehrere Festplatten von verschiedenen RAID 5- Systemen verloren gehen Arrays.

In einem RAID 50 beträgt die Festplattenkapazität nx, wobei x die Anzahl der RAID 5-Server ist, die über Stripes verteilt sind. Wenn beispielsweise ein einfaches RAID 50 mit 6 Festplatten, das kleinstmögliche, 6 x 1 TB Festplatten in zwei RAID 5-Festplatten enthalten, die dann zu einem RAID 50 zusammengefasst wurden, verfügen Sie über 4 TB nutzbaren Speicher.


RAID 60

Gut, wenn: Sie einen ähnlichen Anwendungsfall wie RAID 50 haben, aber mehr Redundanz benötigen

Schlecht, wenn: Sie nicht genügend Festplatten im Array haben

RAID 6 entspricht RAID 60 wie RAID 5 RAID 50. Im Wesentlichen verfügen Sie über mehr als ein RAID 6, über das die Daten in einem RAID 0 verteilt werden. Diese Konfiguration ermöglicht es, bis zu zwei Mitglieder eines einzelnen RAID 6 im Satz zu verwenden ohne Datenverlust zu scheitern. Die Wiederherstellungszeiten für RAID 60-Arrays können erheblich sein. In der Regel empfiehlt es sich, für jedes RAID 6-Mitglied im Array ein Ersatzlaufwerk bereitzustellen.

In einem RAID 60 beträgt die Festplattenkapazität n-2x, wobei x die Anzahl der RAID 6-Server ist, die über Stripes verteilt sind. Wenn beispielsweise ein einfaches RAID 60 mit 8 Festplatten, das kleinstmögliche, 8 x 1 TB Festplatten in zwei RAID 6-Umgebungen enthalten, die dann zu einem RAID 60 zusammengefasst wurden, stehen Ihnen 4 TB nutzbarer Speicherplatz zur Verfügung. Wie Sie sehen, bedeutet dies die gleiche Menge an nutzbarem Speicher, die ein RAID 10 auf einem 8-Mitglieder-Array bieten würde. Während RAID 60 etwas redundanter wäre, wären die Wiederherstellungszeiten wesentlich länger. Im Allgemeinen sollten Sie RAID 60 nur in Betracht ziehen, wenn Sie über eine große Anzahl von Festplatten verfügen.


RAID-Z

Gut, wenn: Sie ZFS auf einem System verwenden, das es unterstützt

Schlecht, wenn: Leistung Hardware-RAID-Beschleunigung erfordert

RAID-Z ist etwas kompliziert zu erklären, da ZFS die Interaktion zwischen Speicher und Dateisystemen radikal verändert. ZFS umfasst die traditionellen Rollen der Datenträgerverwaltung (RAID ist eine Funktion eines Datenträgermanagers) und des Dateisystems. Aus diesem Grund kann ZFS RAID nicht auf der Strip-Ebene des Volumes, sondern auf der Ebene des Speicherblocks der Datei ausführen. Genau das leistet RAID-Z. Schreiben Sie die Speicherblöcke der Datei auf mehrere physische Laufwerke, einschließlich eines Paritätsblocks für jeden Stripesatz.

Ein Beispiel kann dies viel deutlicher machen. Angenommen, Sie haben 3 Festplatten in einem ZFS-RAID-Z-Pool. Die Blockgröße beträgt 4 KB. Jetzt schreiben Sie eine Datei auf das System, die genau 16 KB groß ist. ZFS teilt dies in vier 4-KB-Blöcke auf (wie bei einem normalen Betriebssystem). dann werden zwei Paritätsblöcke berechnet. Diese sechs Blöcke werden auf den Laufwerken platziert, ähnlich wie RAID-5 Daten und Parität verteilt. Dies ist eine Verbesserung gegenüber RAID5, da vorhandene Datenstreifen zur Berechnung der Parität nicht gelesen wurden.

Ein weiteres Beispiel baut auf dem vorherigen auf. Angenommen, die Datei war nur 4 KB groß. ZFS muss noch einen Paritätsblock erstellen, aber jetzt wird die Schreiblast auf 2 Blöcke reduziert. Auf dem dritten Laufwerk können andere gleichzeitige Anforderungen bearbeitet werden. Ein ähnlicher Effekt tritt immer dann auf, wenn die zu schreibende Datei kein Vielfaches der Blockgröße des Pools multipliziert mit der Anzahl der Laufwerke abzüglich eines (dh [Dateigröße] <> [Blockgröße] * [Laufwerke - 1]) ist.

Mit ZFS, das sowohl die Datenträgerverwaltung als auch das Dateisystem verwaltet, müssen Sie sich auch nicht um das Ausrichten von Partitionen oder Stripe-Block-Größen kümmern. All das erledigt ZFS automatisch mit den empfohlenen Konfigurationen.

Die Natur von ZFS wirkt einigen der klassischen Vorbehalte gegen RAID-5/6 entgegen. Alle Schreibvorgänge in ZFS werden beim Schreiben kopiert. Alle geänderten Blöcke in einer Schreiboperation werden an eine neue Position auf der Festplatte geschrieben, anstatt die vorhandenen Blöcke zu überschreiben. Wenn ein Schreibvorgang aus irgendeinem Grund fehlschlägt oder das System während des Schreibvorgangs fehlschlägt, wird die Schreibtransaktion entweder vollständig nach der Systemwiederherstellung (mithilfe des ZFS-Absichtsprotokolls) oder überhaupt nicht ausgeführt, um mögliche Datenbeschädigungen zu vermeiden. Ein weiteres Problem bei RAID-5/6 ist ein möglicher Datenverlust oder eine unbeaufsichtigte Datenbeschädigung während der Wiederherstellung. Regelmäßige zpool scrubVorgänge können dabei helfen, Datenbeschädigungen oder Laufwerksprobleme zu erkennen, bevor sie zu Datenverlusten führen. Durch die Prüfsumme aller Datenblöcke wird sichergestellt, dass alle Beschädigungen während einer Neuerstellung abgefangen werden.

Der Hauptnachteil von RAID-Z besteht darin, dass es sich immer noch um einen Software-Raid handelt (und die gleiche geringe Latenzzeit aufweist, die die CPU bei der Berechnung der Schreiblast hat, anstatt dass ein Hardware- HBA sie entladen muss). Dies wird möglicherweise in Zukunft von HBAs behoben, die die ZFS-Hardwarebeschleunigung unterstützen.

Andere RAID- und Nicht-Standard-Funktionen

Da es keine zentrale Behörde gibt, die irgendeine Art von Standardfunktionalität erzwingt, haben sich die verschiedenen RAID-Level weiterentwickelt und wurden durch die vorherrschende Verwendung standardisiert. Viele Anbieter haben Produkte hergestellt, die von den obigen Beschreibungen abweichen. Es ist auch durchaus üblich, dass sie eine ausgefallene neue Marketing-Terminologie erfinden, um eines der oben genannten Konzepte zu beschreiben (dies kommt am häufigsten auf dem SOHO-Markt vor). Versuchen Sie nach Möglichkeit, den Anbieter dazu zu bringen, die Funktionsweise des Redundanzmechanismus tatsächlich zu beschreiben (die meisten geben diese Informationen freiwillig weiter, da es wirklich keine geheime Soße mehr gibt).

Erwähnenswert sind RAID 5-ähnliche Implementierungen, mit denen Sie ein Array mit nur zwei Festplatten starten können. Es würde Daten auf einem Streifen und Parität auf dem anderen speichern, ähnlich wie RAID 5 oben. Dies würde sich wie RAID 1 mit dem zusätzlichen Aufwand für die Paritätsberechnung verhalten. Der Vorteil ist, dass Sie dem Array Festplatten hinzufügen können, indem Sie die Parität neu berechnen.


Ich habe derzeit keine Zeit, um diese Informationen hinzuzufügen, aber es wäre eine gute Idee , zu erklären, wie Sie die nicht behebbare Lesefehlerrate verwenden können, um den größten RAID 5-Satz zu schätzen, den Sie mit bestimmten Datenträgern verwenden können.
Hubert Kario

Tolle Zusammenfassung! Ich habe einen Zusatz zu RAID5 im Vergleich zu RAID6: Häufig entscheiden sich Personen für RAID6, wenn sie die allgemeine Zuverlässigkeit (Wahrscheinlichkeit eines katastrophalen Array-Ausfalls) von Arrays mit einer großen Anzahl von Spindeln oder Datenträgern mit sehr hoher Kapazität in Betracht ziehen. Dies geschieht basierend auf der Wahrscheinlichkeit, dass ein zweiter Fehler auftritt, während die erste Festplatte wiederhergestellt wird. Meine persönliche Faustregel lautet RAID6, wenn die Anzahl der Spindeln größer als 8 ist oder wenn einzelne Laufwerke größer als 1 TB sind. Ich konnte keinen kanonischen Taschenrechner finden, aber Google und die bekannte Zeit bis zur Wiederherstellung helfen einem, gut zu rechnen.
JGurtz

3
Es kann sinnvoll sein, hier einen Hinweis hinzuzufügen, dass die Linux-Software RAID10 nicht dem Standard entspricht. Es ermöglicht ungewöhnliche und möglicherweise nützliche Layouts. en.wikipedia.org/wiki/Non-standard_RAID_levels#Linux_MD_RAID_10
Zoredache

Könnte es sich lohnen, die Schreibstrafe und das Stripe Coalescing zu klären. RAID 2 oder 3 sind vielleicht eine lobende Erwähnung wert, aber ich kenne keine "echten" Implementierungen. Allerdings - NetApp verwendet immer noch RAID4 (und RAID-DP ist im Grunde RAID-4 mit einem zusätzlichen Paritätslaufwerk.)
Sobrique

1
RAID 6: Soll LSFR LFSR (Linear-Feedback-Schieberegister) sein?
ein CVn

58

Auch RAID EINE MILLION !!!!

128 Disks, also Reads, wären schnelle, fürchterliche Schreibvorgänge, aber sehr zuverlässig. Oh, und Sie würden 1/128 des verfügbaren Speicherplatzes erhalten, aus budgetärer Sicht also nicht großartig. Mach das nicht mit Flash-Laufwerken, ich habe versucht, die Atmosphäre in Brand zu setzen ...

Bildbeschreibung hier eingeben


7
Oh Gott. Chopper verliert jetzt den Verstand.
MDMarra

4
Habe ich meine Mathematik falsch verstanden?
Chopper3

6
Weißt du, ich werde das wirklich richtig bauen?
Chopper3

33
Raid 1000000 würde ein Minimum von 128 Festplatten erfordern, aber es würde 64 Festplatten im Wert von Speicherplatz bereitstellen, es hätte die gleiche schlechteste Schreibleistung wie Raid 1, und 2 weitere Laufwerksfehler würden das Array zerstören. Sie haben Raid 0111111 beschrieben, was eine ziemlich gute Zuverlässigkeit hätte (Raid 11111110 hätte eine bessere Zuverlässigkeit für den Durchschnitt bedeuten müssen.)
Kevin Cathcart

5
Oh, lieblich. Binäre RAID-Level. Was kommt als nächstes?
ein Lebenslauf vom
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.