December 2023
Intermediate to advanced
464 pages
12h 35m
English
Use a combination of system timestamp and logical timestamp to have versions as date and time, which can be ordered.
When Lamport Clock is used as a version in Versioned Value, clients do not know the actual date-time when the particular versions are stored. It’s more convenient for clients to access versions using date and time like 01–01–2020 instead of an integer like 1, 2, 3.
Hybrid logical clock [Demirbas2014] provides a way to have a version which is monotonically increasing just like a simple integer, but also has relation to the actual date and time. Hybrid clocks are used in practice by databases like MongoDB77 or CockroachDB.78
77. https://www.mongodb.com/blog/post/transactions-background-part-4-the-global-logical-clock ...