Was ist Erasure-Coding?
Leserfrage: Die RAID-Technologie scheint nun langsam aber sicher das Ende der Fahnenstange zu erreichen. Neuere Festplatten- und vor allem All-Flash-Arrays setzen auf Erasure-Coding bei der Datenredundanz. Was sind die generellen Vorteile von Erasure-Coding? Und: Gibt’s auch Nachteile?
Antwort Doc Storage:
Erasure Coding (EC) benutzt eine Methode zum Schutz gespeicherter Daten. Bei EC werden die Informationen in einzelne Stücke zerlegt, mit redundanten Informationen erweitert und an physikalisch unterschiedlichen Orten in einem Speichersystem abgelegt. Ziel dieser Methode ist es zu ermöglichen, korrumpierte, veränderte oder verloren gegangene Daten mit Hilfe der noch an anderer Stelle vorhandenen Informationen rekonstruieren zu können. EC wird oftmals an Stelle traditionellen RAID-Schutzes eingesetzt, weil die Hersteller davon überzeugt sind, dass EC deutlich weniger Zeit und Backend-Operationen bei der Rekonstruktion von Informationen in Anspruch nimmt. Allerdings kann EC auch wesentlich mehr der zentralen CPU-Zeit belegen, da in diesem Falle ja kein dedizierter RAID-Prozessor mehr vorhanden ist – was dann wiederum in längeren Liefer- und Schreibzeiten mündet.
EC nutzt hierfür eine mathematische Funktion, um eine Reihe von Ziffern zu erzeugen, die sich mit Hilfe sogenannter polynomer Interpolation auf Korrektheit prüfen und im Falle des Verlustes einzelner Ziffern wieder vervollständigen lassen. Eine einfache Darstellung dieser Funktion ist f = a + b, wobei a die ursprüngliche Menge von Informationen und b die Anzahl von redundant hinzugefügten Daten ist. f ergibt dann die tatsächlich zu speichernde Anzahl an Informationen. Als Beispiel: in einer EC 16/24-Konfiguration werden acht zusätzliche Ziffern zu den ursprünglichen 16 hinzugefügt. Die gesamten 24 Ziffern werden an 24 unterschiedlichen Orten im Array, idealerweise auf 24 unterschiedlichen Laufwerken, abgelegt. Die Originaldaten lassen sich nun jederzeit aus nur 16 der 24 gespeicherten Fragmente rekonstruieren. Das heißt, theoretisch könnten in diesem Array bis zu acht Laufwerke ausfallen, ohne dass es zu Datenverlust kommt.
Der große Vorteil von EC ist weiterhin, dass Daten redundant und wiederherstellbar auch über Gerätegrenzen hinaus geschrieben werden können. Dazu muss man sich nur vorher auf einen generellen Algorithmus einigen. Damit ermöglicht EC den Aufbau von beispielsweise Cloud- oder Archivspeichern auf Basis von Standard- oder unterschiedlicher Hardware unter Beibehaltung der von RAID her gewohnten Redundanzen bzw. logischen Schutzmechanismen.
Gruß
Doc Storage