3 ms·
One way modern distributed databases handle this is by assuming they can't trust the disks. When you are writing to multiple datacenters it makes recovery from
by jchrisa 7y ago
One way modern distributed databases handle this is by assuming they can't trust the disks. When you are writing to multiple datacenters it makes recovery from disk errors just another kind of chaos resilience. The Calvin protocol takes this to its logical conclusion by moving the write-ahead-log to a Raft-like distributed consensus algorithm, where commits to the log span the cluster: https://fauna.com/blog/consistency-without-clocks-faunadb-transaction-protocol https://fauna.com/blog/consistency-without-clocks-faunadb-tr...
I will add that the different flavors of fsync, and what they do (and don't do), is always a source of entertainment in database engineering chat rooms.