Vector Clock
Les horloges vectorielles utilisent un vecteur à N dimensions pour suivre la causalité et déterminer si des événements sont concurrents ou ordonnés causalement ; utilisées pour le suivi de versions distribuées.
Objectif
Déterminer la causalité des événements dans les systèmes distribués sans horloge centrale, permettant la cohérence causale.
Mécanisme
Chaque nœud maintient un vecteur VC[i]. Sur un événement local, VC[self]++. Les messages portent le VC de l'émetteur ; le récepteur prend le maximum par dimension. Si VC[a] < VC[b], a précède causalement b ; s'ils sont incomparables, ils sont concurrents.
Cas d’usage
- Cohérence causale
- Détection de conflits de versions
- Ordonnancement d'événements distribués