- 1 Section
- 10 Lessons
- unbegrenzt
RAID 5: Striping mit Parität
RAID 5 ist der Klassiker – die meistgenutzte RAID-Variante in der Geschichte. Es kombiniert Striping (Performance + Kapazität) mit Parität (Ausfallsicherheit). Der Trick: statt eine Disk komplett zu spiegeln, wird ein berechneter Wert gespeichert, der im Notfall die Wiederherstellung erlaubt – mit deutlich weniger Speicher-Overhead als RAID 1.
Diese Lektion ist die mathematisch interessanteste: du lernst, wie XOR die Parität berechnet und wie sich aus zwei Disks plus Parität die dritte rekonstruieren lässt. Pflichtwissen für FISIs.
1) Die Idee hinter RAID 5
RAID 5 verteilt Daten und Paritätsinformationen über alle Disks. Jede Disk speichert sowohl Daten- als auch Paritätsblöcke. Bei n Disks geht effektiv eine Disk-Größe für Parität drauf – aber nicht eine ganze Disk, sondern verteilt über alle.
Bei 4 Disks à 2 TB hast du also Brutto 8 TB, Netto 6 TB. Die fehlenden 2 TB sind die Paritätsinformation. Mindestens 3 Disks sind nötig.
2) Parität verstehen: XOR
Bevor wir RAID 5 ansehen, brauchst du XOR (exklusives Oder). Das ist eine logische Verknüpfung mit dieser Wahrheitstabelle:
0 XOR 0 = 00 XOR 1 = 11 XOR 0 = 11 XOR 1 = 0
Ergebnis ist 1, wenn sich die Eingänge unterscheiden. Sind sie gleich, ist das Ergebnis 0. Daher der Name „exklusives Oder" – einer der beiden, aber nicht beide.
3) XOR als Paritätswert – Beispiel
P = D1 XOR D2 XOR D3. Beispiel Spalte 1: 1 XOR 1 XOR 0 = 0. Die Paritätsbits werden auf einer eigenen „Disk" gespeichert (bei RAID 5 verteilt). Trick: XOR ist umkehrbar – aus drei der vier Werte (D1, D2, D3, P) kann der vierte rekonstruiert werden.4) Rekonstruktion bei Disk-Ausfall
Angenommen, Disk 2 fällt aus. Wir kennen nur noch D1, D3 und die Parität P. Wie kommen wir an die Daten von Disk 2?
Antwort: D2 = D1 XOR D3 XOR P. Klingt magisch, ist aber pure Algebra:
1 XOR 0 XOR 0 = 1. Damit kennen wir das Bit von Disk 2 wieder. Pro Disk-Ausfall rekonstruiert RAID 5 alle Bits genauso – Spalte für Spalte. Das passiert auf Block-Ebene (typisch 64 KiB), nicht Bit-für-Bit, aber das Prinzip ist dasselbe.5) Wie Parität auf den Disks verteilt ist
Wichtig: bei RAID 5 liegt die Parität nicht auf einer einzigen Disk (das wäre RAID 4 mit dedicated parity disk). Stattdessen rotiert sie über alle Disks. Das verhindert, dass die Parity-Disk zum Engpass wird.
6) Rebuild – wenn eine Disk stirbt
Wenn eine Disk ausfällt, läuft das System weiter (Degraded-Modus), aber jeder Lesezugriff wird langsamer – die fehlenden Blöcke müssen aus den anderen berechnet werden. Tauschst du die kaputte Disk gegen eine neue, startet der Rebuild:
7) Kapazität, Disks, Ausfälle
Beispiel 5 × 2 TB: Netto = 4 × 2 TB = 8 TB (Brutto 10 TB; 2 TB = Parität)
8) Performance und Write Penalty
RAID 5 hat ein berüchtigtes Problem: die Write Penalty. Bei jedem Schreibvorgang muss der Controller:
- Den alten Datenblock lesen.
- Den alten Paritätsblock lesen.
- Den neuen Datenblock schreiben.
- Den neuen Paritätsblock schreiben.
Das sind 4 IOPS pro Schreibvorgang! Im Vergleich zu RAID 0 oder RAID 1 (jeweils 1 oder 2 IOPS) ist das deutlich ineffizienter. Daher: RAID 5 ist nicht ideal für schreib-lastige Workloads.
Lese-Performance dagegen ist gut – ähnlich wie RAID 0 mit n−1 Disks, da Daten parallel gelesen werden können.
9) Das URE-Problem bei großen Disks
10) Vorteile, Nachteile, Use Cases
Zusammenfassung
RAID 5 = Striping mit verteilter Parität. Daten werden in Stripes verteilt, dazu ein XOR-berechneter Paritätsblock pro Stripe, der über alle Disks rotiert. Min: 3 Disks. Tolerierbare Ausfälle: 1. Netto: (n − 1) × Disk-Größe. XOR-Trick: aus zwei Daten + Parität lässt sich der dritte berechnen, daher Rekonstruktion möglich. Vorteile: hohe Effizienz, gutes Lesen. Nachteile: Write Penalty (4 IOPS pro Schreibvorgang), langsamer Rebuild, URE-Risiko bei großen Disks. Nicht für große HDD-Arrays (> 2 TB) – stattdessen RAID 6. Nächste Lektion: RAID 6 – doppelte Parität.
