CChidinmainchidinma.dev·May 17 · 10 min readHybrid Logical Clocks: Having your cake and eating it, tooWe started this series by looking at how physical time breaks down. Clocks drift, they jump, and they lie. Then we replaced them with causality, counters, and ancestry. We tried to get rid of time ent10
CChidinmainchidinma.dev·Apr 18 · 9 min readConstructing Order Without TimeIf you’ve made it this far, you’ve accepted a few uncomfortable truths: Clocks lie. Ordering isn't about time. Causality is what actually matters. And sometimes, even that isn't enough. So, if we can’00
CChidinmainchidinma.dev·Apr 5 · 13 min readOrdering ≠ timeAfter Part 1, if you are feeling a little betrayed, that’s reasonable. We learned that clocks drift, time can jump, machines disagree, and “now” is mostly a polite suggestion. We took the most fundame00
CChidinmainchidinma.dev·Mar 29 · 12 min readWhy time breaks distributed systemsWhen ordering events, time seems like the most obvious thing to use. If something happened at 09:00 and another at 09:01, it is clear what the order is. Right? Wrong. In distributed systems, this intu61M
CChidinmainchidinma.dev·May 29, 2024 · 12 min readIntroduction to Distributed TransactionsTransactions Before we look into distributed transactions, it is important we understand transactions. What is a transaction? A transaction is a set of operations executed as a single, indivisible unit of work on a database ensuring ACID (Atomicity, ...00