Kauzální závislost je fundamentální princip, který dává událostem v distribuovaném systému logický řád.
- Logické hodiny jsou nástrojem k jejímu měření.
- Kauzální doručování (Causal Delivery) je mechanismus, který ji vynucuje v síti.
- Kauzální konzistence je záruka, kterou díky tomu dostane uživatel.
V reálném světě je to vztah Příčina → Následek.
- Příklad: Výstřel (příčina) → Díra v terči (následek).
- Nikdy se nemůže stát, že by se nejprve objevila díra a až pak zazněl výstřel.
Událost $B$ je kauzálně závislá na události $A$ (zapisujeme $A\toB$), pokud:
- Lokální historie: $A$ i $B$ jsou v jednom procesu a $A$ proběhla dříve.
- Přenos zprávy: $A$ je odeslání zprávy a $B$ je její přijetí.
- Tranzitivita: $A$ způsobilo $X$ a $X$ způsobilo $B$. (Tedy $A$ nepřímo způsobilo $B$).
Pokud A→B, pak B “ví” o A a mohlo být ovlivněno výsledkem A.