Praktische RAID-Leistung?


8

Ich habe immer gedacht, dass Folgendes eine allgemeine Faustregel für RAID ist:

  • RAID 0: Beste Leistung für READ und WRITE durch Strippen, größtes Risiko
  • RAID 1: Redundant, anständig für READ (ich glaube, es kann aus verschiedenen Teilen einer Datei von verschiedenen Festplatten lesen), nicht das Beste für WRITE
  • RAID 0 + 1 (01): Kombiniert die Redundanz von RAID 1 mit der Leistung von RAID 0
  • RAID 1 + 0 (10): etwas bessere Version von RAID 0 + 1
  • RAID 5: gute READ-Leistung, schlechte WRITE-Leistung, redundant

IST DIESE ANNAHME RICHTIG? (und wie vergleichen sie sich mit einem JBOD-Setup für die R / W-E / A-Leistung)

Sind bestimmte praktische RAID-Setups für verschiedene Anwendungen besser: Spiele, Videobearbeitung, Datenbank (Acccess oder SQL)?

Ich habe über Festplatten nachgedacht, aber gilt dies auch für Solid-State-Laufwerke?


Mein Verständnis der Redundanz jeder RAID-Klasse ist ziemlich gut. Ich bin mir nur nicht sicher, wie die E / A-Leistung beim Lesen und Schreiben funktioniert.
wag2639

Ich weiß, dass JBOD keine Leistung oder Redundanz bietet. Ich habe es nur als Basisreferenz erwähnt.
wag2639

Antworten:


12

Schlachtzug 0 . Hervorragende Lese- und Schreibgeschwindigkeit. Das Ausfallrisiko stieg mit zunehmender Anzahl der Mitgliedsdatenträger. Keine Parität.

Schlachtzug 1 . Hervorragende Lesegeschwindigkeit nur bei ordnungsgemäßer Implementierung des Treibers - Wenn Sie Areca- und LSI-Raid-Controller verwenden, können diese für Raid 1-Sätze fast die gleiche Lesefähigkeit bieten wie für Raid 0-Sätze (innerhalb von 10%). Beachten Sie, dass es für Software-RAID-Lösungen zwei Typen gibt: OS-Software und Motherboard-Software.

Die meisten Raids vom Motherboard-Typ bieten keine gute Leseleistung für Raid 1. Als ich das letzte Mal nachgesehen habe, dass Windows und Linux auch keine gute Implementierung von Raid 1-Lesevorgängen hatten. BSD hatte eine korrekt implementierte Raid 1-Implementierung, die die Roundrobin-Lesemethode verwendet.

Kurz gesagt, verwenden Sie Raid 1 aus Gründen der Redundanz und der Lesegeschwindigkeit, wenn Sie erweiterte Controller verwenden.

Schlachtzug 1/0 & Schlachtzug 0/1 . Dies ist eine Kombinationssache. Angenommen, Sie haben 10 Festplatten. Raid 1/0 ist, dass es in jedem Satz einen Spiegel gibt: Satz A (1 + 2), Satz B (3 + 4), Satz C (5 + 6), Satz D (7 + 8), Satz E (9+) 10), dann machen Sie einen Streifensatz über die 5 Sätze (AE). Auf diese Weise kann jeder Satz einen Laufwerksfehler aufweisen. Wenn jedoch zwei Laufwerke im selben Satz ausfallen, sind Sie fertig.

Raid 0/1 bedeutet, dass Streifen A (1 + 2 + 3 + 4 + 5) und B (6 + 7 + 8 + 9 + 10) gesetzt und die beiden Sätze gespiegelt werden. Auf diese Weise betrachten die meisten Controller einen Ausfall von Laufwerk 2 und Laufwerk 9 als Totalausfall (bei dem Sie tatsächlich immer noch alle Daten haben).

Es gibt wenig Leistungsunterschied zwischen den beiden, aber ich glaube nicht, dass Sie normalerweise beide von einem Raid-Controller erhalten.

Schlachtzug 5 . Eine sehr gemischte Tasche: Für sequentielle Lesevorgänge ist es schneller als Raid 1/0, und für zufälliges Lesen ist es etwas langsamer. Beachten Sie, dass die Leistung von RAID 5 stark von der Geschwindigkeit des Controllers abhängt (z. B. können Sie bei Onboard-RAID nicht viel erwarten).

Schlachtzug 6 . Die Redundanz hat sich im Vergleich zu Raid 5 erhöht. Zwei Laufwerke können jederzeit ausfallen. Wenn das Array nach einem Ausfall eines Laufwerks neu erstellt wird, besteht immer noch Redundanz (Beachten Sie, dass das Array bei Ausfall des Laufwerks von RAID 5 dem von RAID 0 ähnelt - jedes Laufwerk fällt aus = Totalverlust ).

JBOD . Kein Vorteil, an den ich denken kann.


danke .. also nach dem, was ich gerade lese, ist RAID 0 am besten, ohne einen separaten dedizierten Raid-Controller zu bekommen, wenn ich allgemeine Consumer-Motherboards mit dem Ziel des Performance-Gaming verwende? (Es ist mir egal, ob ich
OS

2
du bist sehr richtig. Ich befürchte jedoch, dass sich die Leistung bei der Verwendung von Motherboard-Raids nicht wesentlich von der bei OS-basierten Software-Raids unterscheidet (obwohl der Unterschied natürlich darin besteht, dass Ihr Systemlaufwerk bei OS-basierten Software-Raids nicht überfallen werden kann). Außerdem ist die Leistung von raid5 bei Motherboard-Raids erbärmlich (in einigen Fällen ab
15-20

2

Wie Ihre Frage impliziert, gibt es nicht wirklich eine "beste" RAID-Konfiguration, sondern nur die beste für bestimmte Umstände, wobei die Kosten häufig einer der wichtigsten Faktoren sind.

Ohne auf die Details von Controllern und Software einzugehen, wären hier meine Faustregeln.

RAID 0 ist das schnellste, da Sie von vielen Festplatten gleichzeitig lesen und darauf schreiben können und kein Speicherplatz für Redundanz "verschwendet" wird. Wenn Sie eine Festplatte verlieren und das Set verlieren, sollte RAID 0 nur auf einem Computer verwendet werden, den Sie nicht interessieren, der einfach wiederherzustellen ist und der keine von Ihnen geschätzten Daten enthält. Ein Spielautomat könnte in dieses Szenario passen, obwohl der Geschwindigkeitsunterschied ehrlich gesagt nicht so spürbar ist, dass ich bereit wäre, das erhöhte Risiko zu akzeptieren, den Computer neu bauen zu müssen. Es kann auch für sehr schnelle "Scratch" -Bereiche nützlich sein, wenn Sie Software haben, die so etwas benötigt.

RAID 1 ist das sehr verbreitete Spiegel-Setup, normalerweise mit 2 Festplatten. Lesevorgänge sind im Allgemeinen nur doppelt so schnell wie eine einzelne Festplatte, während Schreibvorgänge nur etwas langsamer sind als eine einzelne Festplatte. Auf Servern ist RAID 1 eine ausgezeichnete Wahl für Ihre Betriebssystemdateien. Dies ist auch eine gute Wahl, wenn Sie Redundanz benötigen, Ihre Speicheranforderungen nicht so hoch sind, dass RAID 5 erforderlich ist, und Sie möglicherweise von der zusätzlichen Lesegeschwindigkeit profitieren (Datenbankprotokolldateien werden normalerweise auf RAID 1 abgelegt).

RAID 2 bis 4 (nicht in Frage) werden im Allgemeinen nur von Produkten bestimmter Anbieter auf Unternehmensseite verwendet.

RAID 5 ist ein Kompromiss zwischen der Verschwendung von nicht zu viel Speicherplatz für Redundanz und der zusätzlichen Leistung zusätzlicher Festplatten. Die Lesegeschwindigkeiten sind sehr gut, da alle Festplatten teilnehmen können. Schreibgeschwindigkeiten können manchmal ein Problem mit RAID 5 sein, obwohl ich denke, dass dies je nach Situation manchmal überbewertet ist. Selbst bei Hardware, die die Paritätsberechnungen durchführt, leiden kleine zufällige Schreibvorgänge unter RAID 5, da jede logische Schreiboperation 4 E / A erfordert (Lesen von Datenplatte, Lesen von Paritätsplatte, Schreiben von Datenplatte, Schreiben von Paritätsplatte). Wählen Sie RAID 5, wenn Sie den Speicherplatz maximieren möchten, den Sie aus einem Festplattensatz herausholen, während Sie dennoch ein gutes Maß an Sicherheit haben. Vermeiden Sie, wenn Ihre Anwendung hohe Leistungsanforderungen hat und viele kleine zufällige Schreibvorgänge erfordert (Festplatten der virtuellen Maschine, Datenbankdatendateien). Beachten Sie auch, dass moderne große Festplatten eine lange Zeit für die Wiederherstellung benötigen, wenn sie als Teil eines RAID 5-Sets ausfallen, und dass Ihre Daten dadurch länger einem zweiten Festplattenausfall ausgesetzt sind. RAID 6 kann dieses Risiko auf Kosten einer noch schlechteren zufälligen Schreibleistung verringern.

RAID 1/0 und 0/1 haben fast die gleichen Leistungsmerkmale. 1/0 ist jedoch vorzuziehen, da ein Fehler bedeutet, dass nur das betreffende Festplattenpaar neu erstellt wird und nicht ein ganzer Festplattenstreifen. RAID 1/0 ist die schnellste Allzweckkonfiguration der in der Frage genannten. Die Lese- und Schreibleistung ist großartig (Lesevorgänge können im Wesentlichen von allen Festplatten gleichzeitig ausgeführt werden, Schreibvorgänge müssen auf mehreren Festplatten ausgeführt werden, es ist jedoch kein Lese- / Lese- / Schreib- / Schreibzyklus wie bei RAID 5 erforderlich), obwohl RAID 5 unter bestimmten Umständen gewinnen kann. RAID 1/0 ist (nicht überraschend) in fast allen Fällen auch das teuerste. Es sollte nur verwendet werden, wenn die Leistung kritisch ist, die Daten sehr wertvoll sind und die Anwendung keine Toleranz für Ausfallzeiten hat. Oft sind Datenbankserver (oder zumindest deren Datendateien) gute Kandidaten für RAID 1/0.

Solid State Drives können tatsächlich in RAID-Konfigurationen integriert werden, insbesondere aufgrund ihres Redundanzwerts. Viele SSDs können den Bus (SATA), an den sie angeschlossen sind, übertreffen, insbesondere bei Lesevorgängen, sodass der Leistungseffekt von RAID bei SSDs weniger überzeugend ist.


0

Wenn Sie einen Hardware-RAID-Controller kaufen, wählen Sie RAID5. Es hat den geringsten Overhead und der Hardware-RAID-Controller eliminiert fast die Schreib-Overhead-Strafe, da er die Paritätsbits in der Hardware berechnet. Raid5 liest auch mehrere Festplatten ab und verbessert gleichzeitig die Lese- und Schreibgeschwindigkeit.

Ja, dies gilt auch für Solid-State-Laufwerke. Ein Test von SSDs in Raid0 zeigte nahezu lineare Geschwindigkeitssteigerungen.

Raid5 ist bei weitem die am häufigsten verwendete Technologie in der Serverwelt, aber für nur einen Laptop mit nur 2 Festplatten würde ich raid1 als gespiegelt empfehlen.

JBOD hat keine Redundanz für den Fall, dass eine Festplatte ausfällt, kann jedoch abhängig von den Einstellungen die Daten streifen, um die Leistung wie bei einem RAID zu steigern.


1
JBOD kann normalerweise nicht streifen, da es für die Verwendung mit Festplatten unterschiedlicher Größe ausgelegt ist. Wenn Sie dieselbe Größe haben, sollten Sie stattdessen bereits RAID 1 oder RAID 0 verwenden.
Darth Android
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.