EMZETT.
Login

CRDTs: konfliktfrei replizierte Datentypen

Kurz: CRDTs sind Datenstrukturen, die man an mehreren Orten gleichzeitig ändern kann und die sich beim Zusammenführen immer automatisch ohne Konflikt auf denselben Wert einigen.

Genauer: Ihre Merge-Operation ist kommutativ, assoziativ und idempotent. Dadurch spielt Reihenfolge und Doppeltzustellung keine Rolle. Sie bilden die Grundlage für kollaboratives Bearbeiten und Offline-First-Apps.

Im Detail

  • G-Counter: Zähler, der nur wächst; jeder Knoten zählt seinen Anteil, Merge = Maximum je Knoten.
  • PN-Counter: Zwei G-Counter für Plus und Minus.
  • OR-Set: Menge mit Hinzufügen und Entfernen ohne Konflikte.
  • Sequenz-CRDTs: Für Text (z. B. Yjs, Automerge).
  • Zustand- vs. Operationsbasiert: Ganze Zustände oder einzelne Operationen verschicken.
  • Nachteil: Metadaten wachsen, nicht jede Geschäftsregel lässt sich ausdrücken.

Siehe auch: Konsistenzmodelle und Eventual Consistency, Vektoruhren und logische Zeit