EMZETT.
Login

CAP-Theorem

Kurz: Das CAP-Theorem besagt: Ein verteiltes System kann bei einem Netzwerkausfall nicht gleichzeitig Konsistenz und Verfügbarkeit garantieren.

Genauer: Von den drei Eigenschaften Consistency (alle sehen dieselben Daten), Availability (jede Anfrage bekommt eine Antwort) und Partition tolerance (das System läuft trotz Netzwerktrennung) kann man im Fehlerfall nur zwei haben. Da Netzwerkausfälle vorkommen, muss man sich zwischen C und A entscheiden.

Im Detail

  • CP-Systeme: Bevorzugen Konsistenz, verweigern im Zweifel Antworten (z. B. viele Konsens-Speicher).
  • AP-Systeme: Bevorzugen Verfügbarkeit, liefern vielleicht veraltete Daten (z. B. manche Wide-Column-Datenbanken, DNS).
  • Eventual Consistency: Daten gleichen sich mit der Zeit an.
  • Praxis: Die Entscheidung trifft man je Datentyp. Kontostände brauchen Konsistenz, ein „Gefällt mir”-Zähler nicht.

Siehe auch: Datenbank-Transaktionen und ACID, Skalierung