1. RAID-Überblick
1988 schlug die University of California, Berkeley, das Konzept von RAID (RedundantArrayofInexpensiveDisks) vor, und da die Kosten der Festplatten weiter sanken, wurde RAID zu (RedundantArrayofIndependentDisks), aber die Substanz änderte sich nicht. SNIA, Berkeley und andere Organisationen haben die sieben Stufen von RAID0~RAID6 als Standard-RAID-Level festgelegt, und Standard-RAID kann in andere RAID-Level kombiniert werden; die am häufigsten verwendeten Stufen sind RAID0, RAID1, RAID3, RAID5, RAID6 und RAID10. Jede RAID-Ebene repräsentiert eine Implementierungsmethode und Technologie, und es gibt keinen Unterschied zwischen den Ebenen. In praktischen Anwendungen sollten die geeignete RAID-Ebene und spezifische Implementierungsmethoden basierend auf den Eigenschaften der Datenanwendung des Benutzers ausgewählt werden, wobei Verfügbarkeit, Leistung und Kosten berücksichtigt werden.
Aus Implementierungssicht wird RAID hauptsächlich in drei Typen unterteilt: Soft RAID, Hard RAID und Hybrid-RAID. Alle Funktionen von Soft RAID werden vom Betriebssystem und der CPU übernommen, was natürlich am wenigsten effizient ist. Hard RAID ist mit spezialisierten RAID-Steuerungs-/Verarbeitungschips sowie I/O-Verarbeitungschips und Array-Puffern ausgestattet, die keine CPU-Ressourcen beanspruchen, aber kostspielig sind. Hybrid-RAID verfügt über RAID-Steuerungs-/Verarbeitungschips, aber es fehlen I/O-Verarbeitungschips, die CPU und Treiber benötigen, und Leistung sowie Kosten liegen zwischen Soft- und Hard-RAID.
2. Grundprinzipien
RAID ist ein Festplattensubsystem, das aus mehreren unabhängigen, leistungsstarken Festplattenlaufwerken besteht und dadurch eine höhere Speicherleistung und Datenredundanztechnologie als eine einzelne Festplatte bietet. RAID ist eine Klasse von Multi-Disk-Management-Technologien, die leistungsstarken Speicher mit hoher Datenzuverlässigkeit zu erschwinglichen Kosten für die Hostumgebung bietet. Die beiden Hauptziele von RAID sind die Verbesserung der Datenzuverlässigkeit und der I/O-Leistung. In einem Festplattenarray verteilt sich die Daten auf mehrere Festplatten, aber für ein Computersystem ist es wie eine einzelne Festplatte. Redundanz wird erreicht, indem man dieselben Daten gleichzeitig auf mehrere Festplatten schreibt (typischerweise wie Spiegelung) oder indem berechnete Prüfdaten auf ein Array geschrieben werden, um sicherzustellen, dass kein Datenverlust entsteht, wenn eine einzelne Festplatte ausfällt.
Im RAID gibt es drei Hauptkonzepte und -techniken: Spiegelung, DataStripping und Dataparity:
Mirroring, das Daten auf mehrere Festplatten repliziert, verbessert einerseits die Zuverlässigkeit und verbessert die Leseleistung, indem Daten von zwei oder mehr Repliken gleichzeitig gelesen werden. Offensichtlich ist die Schreibleistung des Images etwas geringer, und es dauert länger, bis die Daten korrekt auf mehrere Festplatten geschrieben werden. Data Striping, das Datensplitter auf mehreren verschiedenen Festplatten hält, und mehrere Datensplitter zusammen bilden eine vollständige Kopie der Daten, was sich von mehreren Spiegelkopien unterscheidet, und wird häufig aus Leistungsgründen verwendet. Datenstreifen haben eine höhere Nebenläufigkeitsgranularität, und wenn Daten abgerufen werden, können sie gleichzeitig Daten auf verschiedenen Festplatten lesen und schreiben, was zu einer sehr deutlichen Verbesserung der I/O-Leistung führt. Datenverifikation, bei der redundante Daten zur Fehlererkennung und -reparatur verwendet werden, werden redundante Daten üblicherweise durch Hemingway-Code, XOR-Betrieb und andere Algorithmen berechnet. Die Verifikationsfunktion kann die Zuverlässigkeit, Diebstahl und Fehlertoleranz von Festplattenarrays erheblich verbessern. Datenvalidierung erfordert jedoch, dass Daten aus mehreren Quellen gelesen, berechnet und verglichen werden, was die Systemleistung beeinträchtigen kann. Verschiedene RAID-Klassen verwenden eine oder mehrere der drei Technologien, um unterschiedliche Datenzuverlässigkeit, Verfügbarkeit und I/O-Leistung zu erreichen. Was das Design von RAID betrifft (oder sogar eine neue Qualität oder Typ) oder welche RAID-Art verwendet werden soll, ist es notwendig, eine vernünftige Wahl auf Basis eines tiefen Verständnisses der Systembedürfnisse zu treffen und Zuverlässigkeit, Leistung und Kosten umfassend zu bewerten, um einen Kompromiss einzugehen.
Im Allgemeinen sind die Hauptvorteile von RAID: große Kapazität, hohe Leistung, Zuverlässigkeit und Bewältigbarkeit.
3. RAID-Bewertung
JBOD (JustaBunchOfDisks) ist kein Standard-RAID-Tier, sondern wird häufig verwendet, um eine Sammlung von Festplatten darzustellen, die keine Steuerungssoftware zur koordinierten Steuerung haben. JBOD verbindet mehrere physische Festplatten in Reihe und bildet eine riesige logische Festplatte. Die Speicherleistung ist genau die gleiche wie bei einer einzelnen Festplatte und bietet keine Datensicherheit. Die verfügbare Speicherkapazität entspricht der Summe des Speicherplatzes aller Mitgliedsfestplatten.
RAID0, genannt Striping, ist eine einfache, ungeprüfte Datenstriping-Technologie. Die Performance ist die höchste aller RAID-Stufen. Es werden keine Abfindungspolicen jeglicher Art angeboten. 100 % Auslastung des Speicherplatzes.
RAID1 heißt Spiegelung und schreibt Daten vollständig konsistent auf die funktionierende und gespiegelte Festplatte und hat eine Speicherplatzausbeanspruchung von 50 %. Die Leistung wird beeinträchtigt, wenn Daten geschrieben werden, aber Daten nicht gelesen werden. Sie bietet den besten Datenschutz: Sobald die funktionierende Festplatte ausfällt, liest das System automatisch die Daten von der gespiegelten Festplatte, was die Arbeit des Benutzers nicht beeinträchtigt.
RAID2 heißt Heming Code Disk Array, und die Designidee ist es, Heming Code zu nutzen, um Datenverifikationsredundanz zu erreichen. Je größer die Datenbreite, desto höher der Speicherplatz, aber desto mehr Festplatten benötigt man. Es kann Fehler korrigieren, aber der Datenredundanzaufwand von Hemingcode ist zu groß und die Datenrekonstruktion sehr zeitaufwendig, sodass RAID2 in der Praxis selten verwendet wird.
RAID3 wird als dedizierter Paritätsstreifen bezeichnet, bei dem eine dedizierte Festplatte als Prüfdiskette und der Rest der Disketten als Datendiskette verwendet wird; die Daten werden auf jeder Datenfestplatte kreuz gespeichert in Bits und Bytes. RAID3 benötigt mindestens drei Festplatten.
RAID4 und RAID3 funktionieren nach einem ähnlichen Prinzip. Bietet sehr gute Leseleistung, aber schlechte Schreibleistung. Und mit zunehmender Anzahl der Mitgliedsdisks wird der Systemflaschenhals der Checksum-Disk immer prominenter. Sie ist in realen Anwendungen selten, und gängige Speicherprodukte verwenden selten RAID4-Schutz.
RAID5 wird als verteilter Paritäts-Prüfsummenstreifen bezeichnet, der derzeit das häufigste RAID-Level sein sollte, und das Prinzip ähnelt dem von RAID4, aber es gibt keinen Engpass in der Leistung der Prüfdiskette während gleichzeitiger Schreibvorgänge in RAID4.
RAID6, genannt Doppelparitätsstreifen, führt das Konzept der Doppelprüfungen ein, um das Problem der Datenintegrität zu lösen, wenn zwei Festplatten gleichzeitig ausfallen, was andere RAID-Klassen nicht lösen können. Allerdings kostet es deutlich mehr als RAID5, hat eine schlechte Schreibleistung und ist sehr komplex zu entwerfen und umzusetzen. Daher wird RAID6 in der Praxis selten eingesetzt und stellt im Allgemeinen eine wirtschaftliche Alternative zu RAID10-Lösungen dar.
Standard-RAID-Stufen haben ihre Stärken und Schwächen. Kombinieren Sie mehrere RAID-Stufen, um komplementäre Vorteile zu erzielen und die Schwächen des jeweils anderen auszugleichen, um ein RAID-System mit höherer Leistung, Datensicherheit und weiteren Indikatoren zu erreichen. Natürlich sind die Implementierungskosten des Kombinationsniveaus in der Regel sehr hoch und werden nur in wenigen speziellen Fällen verwendet. Tatsächlich werden nur RAID01 und RAID10 weit verbreitet verwendet.
RAID01 wird zuerst gestreift und dann gespiegelt, was im Wesentlichen dazu dient, die physische Festplatte abzubilden; RAID10 soll zuerst abbilden und dann stripe, also die virtuelle Festplatte abbilden. Unter derselben Konfiguration hat RAID01 in der Regel eine bessere Fehlertoleranz als RAID10. RAID01 vereint die Vorteile von RAID0 und RAID1 mit einer Gesamtnutzung von nur 50 %.
4. Vergleich der gängigen RAID-Niveaus
RAID-Konfiguration
Level/Beschreibung: | Fehlertoleranz | Verdienst | Mangel | RAID 0
Kartiere Daten über Laufwerke hinweg, um große virtuelle Festplatten zu erstellen. Da jede physische Festplatte nur einen Teil der Anfrage verarbeitet, kann sie eine höhere Leistung bieten. Wenn jedoch ein Laufwerk ausfällt, wird die virtuelle Festplatte (VD) nicht mehr zugänglich und die Daten gehen dauerhaft verloren. | nicht | Bessere Leistung Zusätzliche Lagerung | Es darf nicht für kritische Daten verwendet werden | RAID 1
Daten spiegeln, Datenredundanz auf zwei Laufwerken speichern. Wenn eine Festplatte ausfällt, übernimmt die andere Festplatte als Hauptlaufwerk. | Diskettenfehler Ausfall einer einzelnen Festplatte | Hohe Leseleistung Schnelle Wiederherstellung nach einem Laufwerksausfall Datenredundanz | Der Disk-Overhead ist groß Begrenzte Kapazität | RAID 5
Daten über Laufwerke verteilt und die Paritätsbits jedes Datenstreifens auf verschiedenen Laufwerken in VD speichern. Das Paritätsbit enthält Informationen, die verwendet werden können, um Daten von einer ausgefallenen Festplatte von einer anderen Festplatte im Falle eines einzelnen Festplattenausfalls zu rekonstruieren. | Diskettenfehler Ausfall einer einzelnen Festplatte | Effiziente Nutzung der Antriebskapazität Hohe Leseleistung Mittlere bis hohe Schreibleistung | Mäßige Auswirkungen auf Festplattenausfälle Durch die Neuberechnung der Parität ist die Rekonstruktionszeit länger | RAID 6
Daten über Laufwerke verteilt und die Paritätsbits jedes Datenstreifens auf verschiedenen Laufwerken in VD speichern. Im Gegensatz zu RAID 5 führt RAID 6 zwei Paritätsberechnungen (P und Q) durch, wodurch es Ausfällen auf zwei Festplatten standhält. | Datenredundanz Hohe Leseleistung | Diskettenfehler Doppel-Festplatten-Ausfall | Die Schreibleistung wird durch zwei Paritätsberechnungen reduziert Da es der Verwendung von zwei Festplatten für Parität entspricht, entstehen zusätzliche Kosten | RAID 10
Streifen auf dem Spiegelset. Der Datenträger-Overhead ist hoch, aber es ist eine großartige Lösung für hohe Leistung, Redundanz und schnelle Wiederherstellung im Falle eines Laufwerksausfalls. | Diskettenfehler Ein Festplattenausfall pro Image-Set | Hohe Leseleistung RAID-Gruppen mit bis zu 192 Laufwerken können unterstützt werden | Die höchsten Kosten | RAID 50
RAID 5 Strip auf dem Set. Durch die Reduzierung der Festplattenlesezahlen pro Paritätsberechnung kann die Leistung mit RAID 5 je nach Konfiguration verbessert werden. | Diskettenfehler Ein Festplattenausfall pro Zeitraum | Hohe Leseleistung Mittlere bis hohe Schreibleistung RAID-Gruppen mit bis zu 192 Laufwerken können unterstützt werden | Mäßige Auswirkungen auf Festplattenausfälle Durch die Neuberechnung der Parität ist die Rekonstruktionszeit länger | RAID 60
RAID 6 Strip auf dem Set. Mit weniger Festplattenlesevorgängen pro Paritätsberechnung kann die Leistung mit RAID 6 je nach Konfiguration verbessert werden. | Diskettenfehler Zwei Scheiben versagen pro Spann | Hohe Leseleistung RAID-Gruppen mit bis zu 192 Laufwerken können unterstützt werden | Die Schreibleistung wird durch zwei Paritätsberechnungen reduziert Da es der Verwendung von zwei Festplatten für Parität entspricht, entstehen zusätzliche Kosten |
5. Unterschied zwischen RAID-Software und Hardware
Soft RAID
Soft RAID verfügt nicht über einen dedizierten Steuerchip und I/O-Chip, und Betriebssystem sowie CPU implementieren alle RAID-Funktionen. Moderne Betriebssysteme bieten im Grunde Soft-RAID-Unterstützung und ermöglichen eine Abstraktion zwischen physischen und logischen Laufwerken, indem sie eine Softwareschicht auf Festplattentreiber legen. Derzeit sind die am häufigsten vom Betriebssystem unterstützten RAID-Bewertungen RAID0, RAID1, RAID10, RAID01 und RAID5. Zum Beispiel unterstützt Windows Server RAID0, RAID1 und RAID5, Linux unterstützt RAID0, RAID1, RAID4, RAID5, RAID6 usw., und Mac OS X Server, FreeBSD, NetBSD, OpenBSD, Solaris und andere Betriebssysteme unterstützen ebenfalls entsprechende RAID-Level.
Das Konfigurationsmanagement und die Datenwiederherstellung von Soft-RAID sind relativ einfach, aber alle RAID-Aufgaben werden vollständig von der CPU erledigt, wie z. B. die Berechnung von Prüfwerten, sodass die Ausführungseffizienz relativ gering ist.
Soft RAID wird vom Betriebssystem implementiert, sodass die Partition, auf der sich das System befindet, nicht als logisches Mitglieds-Laufwerk von RAID verwendet werden kann, und Soft RAID kann Systemfestplatte D nicht schützen. Bei einigen Betriebssystemen werden RAID-Konfigurationsinformationen in Systeminformationen gespeichert und nicht als separate Datei auf der Festplatte. So gehen die RAID-Informationen verloren, wenn das System unerwartet abstürzt und neu installiert werden muss. Außerdem unterstützt die Fehlertoleranztechnologie der Festplatte nicht vollständig Online-Austausch, Hotswapping oder Hotswapping, und ob sie den Hotswap der falschen Festplatte unterstützen kann, hängt von der Implementierung des Betriebssystems ab.
Hard RAID
Hard RAID verfügt über eigene RAID-Steuerungsverarbeitungs- und I/O-Verarbeitungschips sowie sogar Array-Buffering, das die beste der drei Implementierungsarten in Bezug auf CPU-Nutzung und Gesamtleistung ist, aber auch die höchsten Implementierungskosten aufweist. Hard RAID unterstützt typischerweise Hot-Swapping-Technologie, bei der defekte Festplatten während des Betriebs des Systems ersetzt werden.
Hard RAID besteht aus einer RAID-Karte und einem RAID-Chip, der im Mainboard integriert ist, und Serverplattformen verwenden häufig RAID-Karten. Eine RAID-Karte besteht aus 4 Teilen: dem RAID-Kern-Verarbeitungschip (der CPU der RAID-Karte), dem Port, dem Cache und der Batterie. Unter ihnen beziehen sich Ports auf die Arten von Festplattenschnittstellen, die von RAID-Karten unterstützt werden, wie IDE/ATA, SCSI, SATA, SAS, FC und andere Schnittstellen.
Gemischte harte und weiche RAID
Soft RAID ist nicht sehr gut und schützt Systempartitionen nicht, was die Anwendung auf Desktop-Systeme erschwert. Hard RAID ist sehr teuer, und verschiedene RADs sind unabhängig voneinander und nicht interoperabel. Daher verwenden Menschen eine Kombination aus Software und Hardware, um RAID zu implementieren und so einen Kompromiss zwischen Leistung und Kosten zu erzielen, also eine hohe Kostenleistung.
Obwohl dieses RAID einen Rechensteuerungschip verwendet, ist der Chip zur Kosteneinsparung oft günstiger und hat eine schwächere Rechenleistung, und der Großteil der RAID-Aufgaben wird weiterhin von der CPU über Firmware-Treiber übernommen.
6. Auswahl RAID-Anwendungen
Bei der Wahl einer RAID-Stufe gibt es drei Hauptfaktoren: Datenverfügbarkeit, I/O-Leistung und Kosten. Wenn keine Verfügbarkeit erforderlich ist, wählen Sie RAID0 für hohe Leistung. Wenn Verfügbarkeit und Leistung wichtig sind und die Kosten kein großer Faktor sind, wählen Sie RAID1 basierend auf der Anzahl der Festplatten. Wenn Verfügbarkeit, Kosten und Leistung gleichermaßen wichtig sind, wählen Sie RAID3 oder RAID5 basierend auf dem allgemeinen Datentransfer und der Anzahl der Festplatten. In praktischen Anwendungen sollte das passende RAID-Level basierend auf den Eigenschaften und spezifischen Bedingungen der Datenanwendung des Benutzers ausgewählt werden, wobei Verfügbarkeit, Leistung und Kosten berücksichtigt werden.
|