RAID oder Erasure-Coding – Datenschutz für Festplatten

Bei einem Festplattenausfall schützt RAID in einem Disk-Array vor Datenverlust. Wer auf High-Capacity-Laufwerke setzt muss aber Tage warten, bis eine neue HDD vollständig in den RAID-Verbund integriert ist. Mit den neuangekündigten 24- und 28-TByte-Platten wird es noch länger dauern. Erasure-Coding erscheint hier als die Zukunft. Warum?

Antwort Doc Storage:

Erasure-Coding (EC) bietet gegenüber RAID-Systemen mehr Effizienz, da im direkten Vergleich mehr Speicherplatz zur Verfügung steht. Einer der Hauptvorteile ist die Flexibilität des Verfahrens. Administratoren können das für sie richtige Gleichgewicht zwischen Leistung, Wiederherstellungszeit nach einem Medienausfall und der möglichen Anzahl gleichzeitiger solcher Ausfälle einstellen. Erasure-Coding nutzt vor allem Algorithmen und Dateisystem-Software, um fehlende Daten mithilfe noch vorhandener Rudimente, sogenannter Paritätsblöcke, neu zu generieren.

Anzeige

Vor- und Nachteile von RAID

Warum soll Erasure Coding nun anderen Datenschutzmethoden überlegen sein? Hierfür ist es hilfreich, die verschiedenen Formen des Schutzes sowie deren Vor- und Nachteile zu betrachten.

RAID (Redundant Array of Independent Disks) gibt es schon lange. Die einfachste Schutzkonfiguration ist RAID 1, auch Mirroring genannt. Wie der Name schon sagt, werden beim Spiegeln Daten gleichzeitig auf zwei (oder mehr) Laufwerken aufgezeichnet und dabei identische Kopien, also Spiegel, erstellt. Da sich in einer RAID-1-Konfiguration jede Kopie auf einer separaten physischen Festplatte befindet, können Daten aus dem Spiegelbild wiederhergestellt werden, falls die primäre Festplatte ausfällt. Die Spiegelung ist einfach zu implementieren, hat jedoch einige Nachteile. Da für die Spiegelung mindestens eine vollständige Kopie der Daten erforderlich ist, ist sie hinsichtlich des für den Datenschutz erforderlichen Speicherplatzes äußerst verschwenderisch. Darüber hinaus kann die Spiegelung jeweils nur den Ausfall eines einzelnen Laufwerks abfangen, was für viele Anwendungsfälle im Allgemeinen keinen ausreichenden Schutz bietet, insbesondere wenn die Systemgröße zunimmt.

Über die Spiegelung hinaus bietet der RAID-Standard andere Konfigurationen zur Optimierung der Leistung, des Schutzes oder eben beider Komponenten. Eine gängige Option ist RAID 5 oder Striping mit Parität, was die Effizienz und Leseleistung gegenüber der Spiegelung verbessert. Diese RAID-Konfigurationen können jedoch äußerst komplex sein sowie schwierig zu verwalten und zu warten. Im Falle eines Komponentenausfalls können die Wiederherstellungszeiten mit RAID unannehmbar langsam sein, was sich erheblich auf die Leistung für Benutzer und Anwendungen auswirkt. Wenn RAID für den Datenschutz in Betracht gezogen wird, bietet es je nach Implementierung entsprechende Einschränkungen und führt damit oft zu schwierigen Entscheidungen beim Aufbau von der Konfigurationen. Sollen sich die Verantwortlichen für starken Datenschutz, Leistung oder besserer Speichereffizienz entscheiden? Will man all das, kann RAID nicht liefern.

Anzeige
Newsletter
Newsletter Box

Mit Klick auf den Button "Jetzt Anmelden" stimme ich der Datenschutzerklärung zu.

Vor- und Nachteile von Erasure-Coding

Erasure-Coding unterscheidet sich grundlegend von RAID und soll dessen beschriebene Einschränkungen beheben. Im Gegensatz zu Striping oder Spiegelung stellt Erasure-Coding einen skalierbaren Schutz für große Datenspeicher zur Verfügung. Dieser soll weitaus leistungsfähiger, konfigurierbarer und platzsparender sein und ermöglicht Clustern unbegrenztes Wachstum bei gleichzeitiger Beibehaltung des vollständigen Schutzes und der Reaktionsfähigkeit. Erasure-Coding nutzt höhere Mathematik (Reed-Solomon-Formel), um die Regeneration fehlender Daten aus Rudimenten vorhandener Daten, den Paritätsblöcken, zu ermöglichen. Im Gegensatz zur RAID-Spiegelung, die eine vollständige zweite Kopie erfordert, ist Erasure-Coding platzsparender, da nur ein Paritätsblock für jeweils drei Datenblöcke erforderlich ist.

Bei einer solchen »3,2«-Codierung werden drei Blöcke auf drei verschiedene physische Geräte verteilt. Die Blöcke 1 und 2 enthalten die Benutzerdaten, die wir schützen möchten, und der dritte wird als Paritätsblock bezeichnet. Der Inhalt des Paritätsblocks wird mithilfe des Erasure-Coding-Algorithmus berechnet. Da jeder Block auf ein separates Laufwerk geschrieben wird, könnte jedes der drei Laufwerke ausfallen und die in den Blöcken 1 und 2 gespeicherten Informationen sind immer noch sicher, da sie aus dem Paritätsblock wiederhergestellt werden können.

Falls Datenblock 1 vorhanden ist, liest das System ihn einfach aus. Das Gleiche gilt für Datenblock 2. Wenn jedoch Datenblock 1 fehlt, liest das Erasure-Coding System Datenblock 2 plus Paritätsblock und rekonstruiert den Wert von Datenblock 1. Wenn sich Datenblock 2 auf der ausgefallenen Festplatte befindet, liest das System gleichermaßen Datenblock 1 und den Paritätsblock. Das System stellt immer sicher, dass sich die Blöcke auf verschiedenen Spindeln befinden, damit das System gleichzeitig aus Blöcken lesen kann. Eine 3,2-Kodierung hat eine Speichereffizienz von zirka 67 Prozent. Hiermit ist sie zwar platzsparender als die 50-prozentige Effizienz der Spiegelung, kann aber immer noch nur vor einem Ausfall einer einzelnen Festplatte schützen.

Erasure-Coding lässt sich allerdings so konfigurieren, dass es die Leistung sowie die Wiederherstellungszeit bei ausgefallenen Medien optimiert oder für mehr Ausfallsicherheit sorgt. Möglich sind bis zu vier beliebige ausgefallene Festplatten oder beliebige vier ausgefallene Knoten gleichzeitig. Im Allgemeinen geht ein erhöhter Schutz auf Kosten der nutzbaren Kapazität. Viele Systeme verwenden mindestens die 6,4-Kodierung, die ein Drittel mehr Daten im gleichen Speicherplatz als bei der Spiegelung speichert. Zusätzlich hat sie die Fähigkeit, zwei Festplattenausfälle zu tolerieren, anstatt nur einen wie bei Spiegelung oder 3,2-Schutz. Selbst wenn in einer 6,4-Konfiguration zwei Blöcke mit Benutzerdaten nicht verfügbar sind, muss das System nur die beiden verbleibenden Datenblöcke und die beiden Paritätsblöcke lesen, um die fehlenden Daten wiederherzustellen.

Erasure-Coding arbeitet auf Block- und nicht wie andere Plattformen auf Dateiebene. Dies soll nicht nur einen effektiven Schutz ermöglichen, ohne dass eine 1:1-Kopie des gesamten Datenbestandes erstellt werden muss, sondern auch die Größe von Dateien auf den Datenträgern verringern und keinen Einfluss auf die Kodierungs- und Wiederherstellungszeiten haben. Unabhängig davon, ob die Dateien riesig oder klein sind, soll die Codierungs- und Wiederherstellungsleistung nicht nur schnell, sondern auch zuverlässig sein.

Bei anderen Systemen kann die Wiederherstellung nach einem Ereignis je nach Größe der verwendeten Datenträger Stunden bis Tage dauern, meist abhängig von der Mischung gespeicherten Dateigrößen. Erasure-Coding soll unabhängig von der Mischung der gespeicherten Daten schnell und zuverlässig eine Wiederherstellung garantieren, ohne die Leistung zu beeinträchtigen. Dies soll dem Anwender ermöglichen, selbst die größten und wirtschaftlichsten Laufwerke am Markt ohne zeitliches Risiko bei der Wiederherstellung zu nutzen.

Grüße
Doc Storage

Anmerkung der Redaktion

Der Inhalt des Artikels entspricht der persönlichen Ansicht des Autors und spiegelt nicht unbedingt die Meinung der Redaktion wider.

Weiterführende Links:

Doc

Storage

Doc. tec. Storage beantwortet alle Ihre technischen Fragen zu Storage, Backup & Co.Stellen Sie Ihre Frage an: [email protected]
Anzeige

Weitere Artikel

Newsletter
Newsletter Box

Mit Klick auf den Button "Jetzt Anmelden" stimme ich der Datenschutzerklärung zu.