CAP & PACELC
CAP beschreibt den Zielkonflikt zwischen konsistenten Antworten und Verfügbarkeit während einer Netzpartition. Die Partition ist dabei die Situation, in der voneinander getrennte Knoten nicht kommunizieren.
- PartitionRegionen erreichen sich nicht.
- KonsistenzGemeinsame Sicht vor der Annahme.
- VerfügbarkeitAnnahme trotz Trennung.
Einordnung
Warum das wichtig ist
Wenn Regionen getrennt sind, kann ein System nicht zugleich jede Antwort konsistent und jede Anfrage verfügbar halten. Ohne bewusste Wahl entscheidet der Zufall, was Kunden im Warenkorb erleben. Konsistenzmodelle vertiefen eigene Bausteine.
Dieser Baustein ordnet Zusagen bei Netzpartitionen ein. Quorum betrachtet konkrete Lese- und Schreibbestätigungen; Konsens ordnet verbindliche Zustände.
Auf einen Blick · Partition erzwingt eine Wahl
Warenkorbänderung bei Netzpartition
Der Warenkorb ist in zwei Regionen repliziert. Während die Regionen getrennt sind, entscheidet der Shop, ob Änderungen an den Warenkorbpositionen lokal angenommen oder bis zu einer gemeinsamen Sicht zurückgestellt werden.
So liest du das Bild
- Partition Bei „getrennt“ steht Region B auf „ohne Gegenstelle“.
- Konsistenz Bei Konsistenz wartet die Warenkorbänderung und blockiert vorübergehend.
- Verfügbarkeit Bei Verfügbarkeit wird die Änderung lokal gespeichert, die Zusammenführung folgt später.
- läuftRegion Animmt Änderung an
- läuftRegion Bhat denselben Stand
- läuftWarenkorbänderungsofort angenommen
- läuftZusammenführungnicht nötig
sofortAnnahme der Änderung
Nutzen & Grenzen
Hilft, wenn
- Verteilte Zugriffe über Replikate brauchen eine klare Einordnung erreichbarer Antworten während einer Netzpartition.
- Im Normalbetrieb ergänzt PACELC die Abwägung zwischen Latenz und Konsistenz.
- Unterschiedliche Operationen erhalten unterschiedliche Zusagen, die jeweils pro Zugriff festgelegt werden.
Grenzen
- CAP gilt für den Fall einer Partition; ohne Trennung gibt es diesen Zielkonflikt nicht und alle Zusagen sind möglich.
- Die Wahl trifft je Operation, nicht je Gesamtsystem: Warenkorbänderung und Bestellabschluss können verschieden priorisieren.
- Verfügbarkeit verlangt eine Konfliktregel nach der Trennung; Replikation und Konsistenz legen fest, wie Stände zusammenfinden.
In der Praxis
- Ordne die Aussage einer konkreten Operation, Partition und Konsistenzgarantie zu. Bestimme anschließend, welche Anfragen während der Trennung beantwortet oder zurückgestellt werden.
- Trenne Partition von Normalbetrieb und dokumentiere jeweils die gewählte Abwägung. PACELC ergänzt die Latenz-Konsistenzfrage ohne Partition.
- Prüfe die tatsächliche Replikatgruppe und Konfiguration unter Netztrennung. Der Baustein Konsistenzmodelle definiert Lesesicht; Quorum ordnet Bestätigungsmengen.
Ausführliche Erklärung lesen
Während einer Netzpartition muss ein verteilter Dienst für jede Anfrage zwischen linearisierbaren Antworten und Antwortverfügbarkeit an erreichbaren Knoten abwägen. PACELC ergänzt die Abwägung zwischen Latenz und Konsistenz im Normalbetrieb.
Die Begriffe müssen auf ein konkretes Konsistenzmodell und eine einzelne Operation bezogen werden. CAP ist keine allgemeine Auswahl zweier Systemeigenschaften; Konfiguration, Replikatgruppen und Fehlerdomänen bestimmen die tatsächliche Zusage.
Konsistenzmodelle formulieren die Sichtbarkeit einer Operation; Quorum beschreibt Antwortschwellen, die in einer Replikatkonfiguration gewählt werden können. CAP betrifft die Abwägung während einer Partition.
Das CAP-Theorem geht auf Eric Brewer zurück.
Selbst prüfen
Teste dich in drei Stufen
AblesenIm Bild nachsehen
Was geschieht bei getrennten Regionen, wenn Verfügbarkeit Vorrang hat?
Lösung mit Begründung ansehen
Die Region nimmt die Änderung lokal an. Konflikte werden später über die Konfliktregel zusammengeführt.
AnwendenAuf eine neue Lage übertragen
Kunden sollen im Warenkorb auch während einer Trennung weiter Tassen hinzufügen können. Welche Priorität wählt der Shop, und was folgt daraus?
Lösung mit Begründung ansehen
Er priorisiert Verfügbarkeit. Die Region nimmt die Änderung lokal an und gleicht Konflikte nach der Trennung über die definierte Konfliktregel ab.
BewertenEine Alternative abwägen
Der Shop priorisiert Konsistenz für Warenkorbänderungen. Welchen Vorteil und welchen Nachteil hat das?
Lösung mit Begründung ansehen
Vorteil: Nach der gemeinsamen Prüfung gibt es einen klaren Stand ohne späteren Abgleich. Nachteil: Änderungen können während der Trennung vorübergehend blockieren, der Warenkorb ist dann schlechter bedienbar.
Vertiefen
Diese Bausteine führen die Gedanken dieser Seite weiter.
Quellen
- Gilbert und Lynch – Brewer’s Conjecture (öffnet in neuem Tab)Formaler Nachweis des Zielkonflikts zwischen Konsistenz und Verfügbarkeit bei Partitionen.
- Daniel Abadi – Consistency Tradeoffs (öffnet in neuem Tab)Originalarbeit zu PACELC und dem zusätzlichen Zielkonflikt zwischen Latenz und Konsistenz.
- Eric Brewer – CAP Twelve Years Later (öffnet in neuem Tab)Der Urheber präzisiert CAP und den Umgang mit Partitionen und Wiederherstellung.