Go to Top

Erasure Coding (EC) – was ist das?

Erasure Coding

Erasure Coding (EC) ist eine Technik zur Absicherung von Daten. Bei dieser Methode werden die Daten in Fragmente aufgeteilt und diese dazu noch mit redundanten Datenschnippseln erweitert und kodiert. Dann werden die Daten auf verschiedene Standorte verteilt und gespeichert.

Ziel dieser Technik ist die Rekonstruktion beschädigter Dateien. Dazu werden diejenigen Informationen der korrupten Daten, die an anderer Stelle gespeichert sind, herangezogen.

Erasure Coding erstellt eine mathematische Funktion, um eine definierte Anzahl an Zahlen zu bestimmen. Die Software prüft diese auf Exaktheit und stellt sie wieder her, wenn eine Zahl fehlt. Das Konzept zu Erasure Coding basiert auf Polynom-Interpolation oder Oversampling (Überabtastung). Mathematisch gesprochen kann man den durch Erasure Coding angebotenen Schutz durch eine Gleichung darstellen: n = k + m. Hierbei steht sie Variable „k“ für die Anzahl von Daten oder Symbolen. Die Variable „m“ stellt zusätzliche oder redundante Zeichen dar, die den Ausfallschutz gewährleisten sollen. Die Variable „n“ beschreibt die gesamte Anzahl der Zeichen, die nach dem Erasure-Coding-Prozess benutzt werden.

In der beispielhaften Konfiguration EC 10/16 (zehn von 16), fügt man den zehn Grundzeichen (k) sechs zusätzliche Zeichen (m) an. Diese 16 Daten-Fragmente (n) werden auf Festplatten, Nodes oder andere Speicherorte verteilt. Schon mit zehn verifizierten Fragmenten kann die Originaldatei wiederhergestellt werden, das heißt, auch wenn sechs Festplatten, Nodes oder andere Speicherstandorte unerreichbar sind, ist es möglich, die Originaldatei zu regenerieren.

Nützlich ist Erasure Coding bei sehr großen Datenmengen oder für Applikationen oder Systeme, die fehlertolerant sein müssen wie verteilte Storage-Applikationen und Objektspeicher, Disk-Arrays, Data Grids, und Archive. Objektbasiertes Cloud-Storage wäre ein Beispiel für die Anwendung von Erasure Coding.