RAID Level 2 – 7 Fehlerkorrektur

Zwar bietet Mirroring perfekte Redundanz, verursacht jedoch gleichzeitig einen hohen Overhead und entsprechend hohe Kosten. Um diesen Nachteil zu beheben, arbeiten die RAID -Level 2 bis 7 mit Fehlerkorrektur. Sie verteilen zunächst die Nutzdaten per Striping auf wenigstens zwei Datenlaufwerke. Aus deren Dateninhalt wird anschließend ein Korrekturwert errechnet, mit dessen Hilfe sich nach einem Ausfall die Daten des defekten Laufwerks wieder rekonstruieren lassen. Dieser ECC -Code wird auf einem eigenen Parity-Laufwerk abgelegt. Dabei setzt RAID auf eines der ältesten Verfahren zur Fehlerkorrektur, die Paritätsprüfung. Dazu verknüpft es die Daten der Nutzlaufwerke über eine logische Exklusiv-Oder-Operation (XOR) und speichert das Resultat auf einem eigenen Parity-Laufwerk. Das Ergebnis der Verknüpfung ist dann 1, wenn eine ungerade Anzahl von Bitstellen eine 1 aufweist. Bei einer geraden Anzahl dagegen ist das Ergebnis 0. Beispiel – Parity-Generierung:Laufwerk Inhalt Laufwerk A 11101100 Laufwerk B 10110011 Laufwerk C 01001101 Parity-Laufwerk 00010010 Fällt nun ein beliebiges Laufwerk aus, lassen sich durch ein erneutes XOR die verloren gegangenen Daten problemlos rekonstruieren: Beispiel – Fehlerkorrektur durch Parity: vor dem Ausfall B-Ausfall P-Ausfall Laufwerk A 11101100 11101100 11101100 Laufwerk B 10110011 xxxxxxx 10110011 Laufwerk C 01001101 01001101 01001101 Parity-Laufwerk 00010010 00010010 xxxxxxx Datenrekonstruktion 10110011 00010010