Logical Physical Clocks and Consistent Snapshots in Globally Distributed Databases
There is a gap between the theory and practice of distributed systems in terms of the use of time. Theory of distributed systems shunned the notion of time, and introduced “causality tracking” as a clean abstraction to reason about concurrency. The practical systems employed physical time (NTP) information but in a best effort manner due to the difficulty of achieving tight clock synchronization. In an effort to bridge this gap and reconcile the theory and practice of distributed systems on the topic of time, we propose a hybrid logical clock, HLC, that combines the best of logical clocks and physical clocks. HLC captures the causality relationship like logical clocks, and enables easy identification of consistent snapshots in distributed systems. Dually, HLC can be used in lieu of physical clocks since it maintains its logical clock to be always close to the NTP clock. Moreover HLC fits in to 64 bits NTP timestamp format, and is masking tolerant to NTP kinks and uncertainties.
Relations
official for Hybrid logical clock
Hybrid logical clock, HLC, combines the best of logical clocks and physical clocks. HLC captures the...
referenced in CRDTs for Mortals - James Long at dotJS 2019
What do CRDTs and frontends have to do with each other? James talks about how CRDTs finally deliver...
referenced in Time in distributed systems
The notion of a time plays very important role in distributed systems. But, why do we worry so much a...
Edit details Edit relations Attach new author Attach new topic Attach new resource
from 1 review
- Resource level 7.0 /10
- beginner intermediate advanced
- Resource clarity 6.0 /10
- hardly clear sometimes unclear perfectly clear
- Reviewer's background 3.0 /10
- none basics intermediate advanced expert
Comments 1
8 rating 7 level 6 clarity 3 user's background