Thursday, November 5, 2026
Home » Erasure Coding vs. Replikation: Daten im großen Maßstab schützen

Erasure Coding vs. Replikation: Daten im großen Maßstab schützen

Im großen Maßstab sind Hardwareausfälle kein Ereignis, sondern ein Dauerzustand. Laufwerke sterben, Knoten starten neu, Standorte fallen aus – und ein Speichersystem muss Ihre Daten durch all das hindurch intakt halten. Dafür gibt es zwei vorherrschende Wege: zusätzliche Kopien der Daten vorhalten (Replikation) oder die Daten in Fragmente mit zusätzlicher Parität aufteilen (Erasure Coding). Die Wahl zwischen beiden bestimmt, wie viel Sie für Rohkapazität ausgeben, wie haltbar Ihre Daten sind und wie sich das System verhält.

Einen universellen Sieger gibt es nicht. Es gibt nur die passende Lösung für ein bestimmtes Datenprofil und eine bestimmte Größenordnung.

Was ist Replikation?

Replikation ist die einfache Idee: mehr als eine identische Kopie der Daten auf getrennter Hardware vorhalten. Geht eine Kopie verloren, liefert das System die Daten aus einer anderen und baut die fehlende neu auf. Die gängigste Konfiguration hält drei Kopien vor, oft bezeichnet als 3-fach-Replikation.

Der Reiz liegt in der Einfachheit. Schreib- und Lesevorgänge sind unkompliziert, die Latenz ist gering, weil jede vollständige Kopie eine Anfrage beantworten kann, und die Wiederherstellung ist einfach, da der Neuaufbau einer verlorenen Kopie bloß das Kopieren einer vorhandenen ist. Für kleine Dateien, heiße Daten und latenzkritische Workloads ist Replikation kaum zu schlagen.

Der Haken sind die Kosten. Drei Kopien bedeuten das Dreifache der Rohkapazität der eigentlichen Daten – ein Redundanz-Zuschlag von 200 Prozent zusätzlich zu den Daten selbst. Wer ein nutzbares Petabyte mit 3-fach-Replikation speichert, kauft drei Petabyte an Rohspeicher. Im kleinen Maßstab ist das in Ordnung. Im Petabyte-Bereich und darüber hinaus wird es zum größten Einzelposten im Speicherbudget.

Was ist Erasure Coding?

Erasure Coding schützt Daten mit Mathematik statt mit vollständigen Kopien. Das System teilt ein Objekt in k Datenfragmente auf, berechnet daraus m zusätzliche Paritätsfragmente und verteilt alle k+m Fragmente auf getrennte Fehlerdomänen, etwa verschiedene Festplatten, Knoten oder Standorte. Die entscheidende Eigenschaft: Das ursprüngliche Objekt lässt sich aus beliebigen k der Fragmente rekonstruieren. Das System kann also bis zu m Fragmente gleichzeitig verlieren und die Daten trotzdem liefern.

Ein Beispiel macht die Effizienz deutlich. Ein 8+4-Schema teilt jedes Objekt in 8 Daten- und 4 Paritätsfragmente auf, insgesamt 12. Sie können beliebige 4 der 12 verlieren und das Objekt dennoch rekonstruieren. Der Speicherbedarf ergibt sich aus der Gesamtzahl geteilt durch die Datenfragmente, also 12/8 oder das 1,5-Fache der Daten – ein Redundanz-Zuschlag von 50 Prozent. Vergleichen Sie das mit der 3-fach-Replikation und ihrem Zuschlag von 200 Prozent, oft bei vergleichbarer oder besserer Fehlertoleranz. Dieser Abstand ist der Grund, warum Erasure Coding die Wirtschaftlichkeit von Speicher im großen Maßstab dominiert.

So funktioniert es, kurz gefasst

Die meisten Systeme nutzen Reed-Solomon-Codes. Für gute Entscheidungen brauchen Sie die Algebra nicht. Das mentale Modell genügt: Die Daten werden in Blöcke zerlegt, die Parität wird so berechnet, dass beliebige k Fragmente genug Information enthalten, um das Ganze zu rekonstruieren, und die Fragmente werden so verteilt, dass kein einzelner Ausfall – und oft auch kein Standortausfall – mehr Fragmente ausschaltet, als das Schema verkraften kann.

Die Abwägungen im direkten Vergleich

Keiner der Ansätze ist einfach besser. Sie tauschen unterschiedliche Dinge gegeneinander ab.

Speichereffizienz und Kosten

Hier liegt der entscheidende Vorteil von Erasure Coding. Ein typisches Erasure-Coding-Schema speichert Daten mit etwa dem 1,2- bis 1,5-Fachen, während 3-fach-Replikation das Dreifache benötigt. Bei großen Beständen kann dieser Unterschied die Rohkapazität – und damit Strom, Kühlung und Rackfläche – um die Hälfte oder mehr senken. Je größer die Umgebung, desto größer die Einsparung.

Haltbarkeit

Beide können eine sehr hohe Haltbarkeit (auf Englisch) erreichen, die üblicherweise in vielen Neunen angegeben wird. Die Haltbarkeit bei Replikation hängt von der Anzahl der Kopien ab und davon, wie unabhängig voneinander sie ausfallen können. Bei Erasure Coding lässt sich die Haltbarkeit direkt über die Wahl von k und m einstellen: Ein größeres m erhöht die Zahl gleichzeitiger Ausfälle, die das System übersteht – meist zu deutlich geringeren Kapazitätskosten als eine weitere vollständige Kopie. Für ein angestrebtes Schutzniveau kommt Erasure Coding in der Regel mit weniger Zuschlag aus.

Leistung

Hier verdient sich die Replikation ihren Platz. Weil jede vollständige Kopie einen Lesevorgang bedienen kann, liefert Replikation geringe Latenz und kommt gut mit kleinen Objekten und wahlfreiem Zugriff zurecht, ohne Paritätsberechnung im Schreibpfad. Erasure Coding erfordert zusätzliche Rechenleistung für die Parität, und die Rekonstruktion eines Objekts kann das Lesen mehrerer Fragmente von verschiedenen Geräten erfordern, was Leseverstärkung und Netzwerkverkehr verursacht. Als allgemeine Tendenz gilt: Replikation begünstigt kleine und heiße Daten, Erasure Coding den Durchsatz bei großen Objekten. Moderne Implementierungen haben den Abstand verringert – betrachten Sie das daher als Tendenzen, die Sie für Ihren Workload prüfen sollten, nicht als eiserne Regeln.

Rebuild und Wiederherstellung

Fällt ein Gerät aus, baut Replikation die Daten durch das Kopieren einer intakten Kopie neu auf. Das ist schnell und einfach, konzentriert die Last aber auf die Quelle der Kopie. Erasure Coding liest k Fragmente und berechnet das fehlende neu. Das benötigt mehr CPU und Netzwerk, verteilt die Arbeit aber auf viele Geräte. Im sehr großen Maßstab ist die Frage, wie ein System mit Rebuilds umgeht und ob ein Rebuild-Sturm die Produktion beeinträchtigt, ebenso wichtig wie die Leistung im Normalbetrieb.

Fehlerdomänen und Geografie

Erasure Coding hat eine praktische Untergrenze: Sie brauchen mindestens k+m unabhängige Fehlerdomänen, um die Fragmente zu platzieren – ein Grund, warum kleine Cluster auf Replikation setzen. Die Platzierung kann lokal sein (Fragmente über Festplatten und Knoten an einem Standort) oder geografisch verteilt (Fragmente über mehrere Standorte). Geografisch verteiltes Erasure Coding kann vor dem Verlust eines ganzen Standorts schützen – mit deutlich weniger Zuschlag, als alles an jeden Standort zu replizieren, allerdings um den Preis zusätzlicher Latenz und standortübergreifender Bandbreite. Replikation über mehrere Standorte ist einfacher, vervielfacht die Kapazität aber mit der Anzahl der Standorte.

Größenordnung

Die Größenordnung gibt den Ausschlag. Bei kleinen Beständen ist der Zuschlag der Replikation bezahlbar und ihre Einfachheit viel wert. Wenn Sie sich dem Petabyte-Maßstab nähern und ihn überschreiten, lässt sich der dreifache Aufschlag kaum noch rechtfertigen, und Erasure Coding wird zum Standard für die Massenkapazität.

Wann welches Verfahren passt

Greifen Sie zur Replikation, wenn Daten klein, heiß oder latenzkritisch sind, wenn der Cluster klein ist oder wenn betriebliche Einfachheit Vorrang hat. Metadaten, aktive Arbeitsdatensätze und Workloads mit kleinen Objekten passen naturgemäß dazu.

Greifen Sie zu Erasure Coding, wenn Objekte groß sind, wenn Daten warm oder kalt und kapazitätsintensiv sind, wenn Sie im Petabyte-Maßstab arbeiten, wenn der Kostendruck real ist oder wenn Sie hohe Haltbarkeit brauchen, ohne die Kapazität zu verdreifachen. Backups, Archive, Medien und große unstrukturierte Datensätze passen naturgemäß dazu.

In der Praxis entscheiden sich die besten Systeme nicht nur einmal. Sie kombinieren. Ein gängiges Muster repliziert kleine und heiße Daten für die Geschwindigkeit und nutzt Erasure Coding für große und kalte Daten wegen der Effizienz. Manche Systeme replizieren bei der Aufnahme für eine schnelle Bestätigung und wandeln die Daten anschließend im Hintergrund in Erasure Coding um. Kombiniert man das mit Tiering und Platzierung über mehrere Standorte, erhält man einen Schutz, der auf jeden Teil der Daten zugeschnitten ist, statt einer einzigen pauschalen Richtlinie.

Häufige Missverständnisse

Einige Mythen führen zu schlechten Entscheidungen.

„Erasure Coding ist immer langsamer.“ Nicht wirklich. Bei großen Objekten und durchsatzorientierten Workloads kann es hervorragend sein. Die Leistungseinbußen zeigen sich vor allem bei kleinen Objekten und latenzkritischem Zugriff – genau dort, wo eine replizierte Ebene hingehört.

„Erasure Coding ist nur für kalte Archive.“ Das stimmt immer weniger. Schnellere Medien und bessere Implementierungen haben Erasure Coding in vielen Systemen auch für aktive Daten tauglich gemacht.

„Mehr Parität kostet nichts.“ Doch. Ein größeres m verbessert die Fehlertoleranz und kostet relativ wenig Kapazität, erhöht aber den Aufwand für Kodierung und Rebuild und erfordert genügend Fehlerdomänen für die Platzierung der Fragmente. Legen Sie k und m für Ihr reales Ausfallmodell aus, nicht für das theoretische Maximum.

Kurzübersicht

DimensionReplikation (zum Beispiel 3-fach)Erasure Coding (zum Beispiel 8+4)
Redundanz-ZuschlagHoch (200 % bei 3-fach)Gering (etwa 50 % bei 8+4)
FehlertoleranzÜbersteht den Verlust von N-1 KopienÜbersteht den Verlust von bis zu m Fragmenten
Beste WorkloadsKlein, heiß, latenzkritischGroße Objekte, kapazitätsintensiv, warm/kalt
RebuildSchnelle Kopie, konzentrierte LastNeuberechnung aus k Fragmenten, verteilte Last
MindestumfangWenige KnotenMindestens k+m Fehlerdomänen
Typischer EinsatzMetadaten, heiße Ebene, kleine ClusterMassenkapazität im Petabyte-Maßstab, Backups, Archive

Alles zusammengefasst

Erasure Coding vs. Replikation ist kein Kampf mit einem einzigen Sieger. Es ist eine Designentscheidung, die Sie je nach Datenprofil und Größenordnung treffen. Replikation bringt Einfachheit und geringe Latenz zu hohen Kapazitätskosten. Erasure Coding bringt eine drastische Kapazitätseffizienz und eine einstellbare, hohe Haltbarkeit – um den Preis von mehr Rechenaufwand und einer sorgfältigeren Planung der Fehlerdomänen.

Für die meisten großen Umgebungen und für Objektspeicher ist die sinnvolle Standardwahl Erasure Coding für die Massenkapazität, mit einer replizierten Ebene für kleine, heiße und latenzkritische Daten. Was auch immer Sie wählen: Planen Sie Ihre Fehlerdomänen bewusst, legen Sie k und m nach Ihrem realen Risiko aus, und testen Sie, wie sich das System während eines Rebuilds verhält – nicht nur, wenn alles in Ordnung ist. Genau dort zeigt sich, ob die Skalierung hält oder zusammenbricht.

Häufig gestellte Fragen

Ist Erasure Coding besser als Replikation?

Nicht grundsätzlich. Erasure Coding ist deutlich speichereffizienter und erreicht hohe Haltbarkeit mit geringerem Zuschlag, was es im großen Maßstab zur üblichen Wahl macht. Replikation ist einfacher und schneller bei kleinen, heißen, latenzkritischen Daten. Die meisten großen Systeme nutzen beides.

Wie viel Speicher spart Erasure Coding gegenüber Replikation?

Im großen Maßstab sehr viel. Während 3-fach-Replikation Daten mit dem Dreifachen der Rohkapazität speichert (200 Prozent Redundanz-Zuschlag), kommt ein Schema wie 8+4 mit etwa dem 1,5-Fachen aus (50 Prozent Zuschlag) – oft bei vergleichbarer oder besserer Fehlertoleranz.

Ist Erasure Coding langsamer als Replikation?

Bei kleinen Objekten und latenzkritischem Zugriff kann es das sein, wegen der Paritätsberechnung und des Lesens mehrerer Fragmente. Beim Durchsatz großer Objekte schneidet es gut ab. Das passende Muster ist oft eine replizierte heiße Ebene plus eine Kapazitätsebene mit Erasure Coding.

Was bedeuten k und m beim Erasure Coding?

k ist die Anzahl der Datenfragmente, in die ein Objekt aufgeteilt wird, und m die Anzahl der hinzugefügten Paritätsfragmente. Sie speichern k+m Fragmente und können bis zu m davon verlieren. Ein 8+4-Schema hat k=8 und m=4.

Lassen sich Erasure Coding und Replikation kombinieren?

Ja, und viele Systeme tun genau das. Ein gängiger Ansatz repliziert kleine und heiße Daten für die Geschwindigkeit und nutzt Erasure Coding für große und kalte Daten wegen der Effizienz – teils mit Replikation bei der Aufnahme und späterer Umwandlung in Erasure Coding.

Weiterführende Lektüre: Objekt- vs. Blockspeicher, Haltbarkeit in Systemen mit hoher Dichte und verteilter Objektspeicher.