4 ms·
Tbh I think you got it backwards. CALM is actually very much about eventual consistency. The gist is basically, that distributed systems are only eventually con
by j-pb 6y ago
Tbh I think you got it backwards.
CALM is actually very much about eventual consistency.
The gist is basically, that distributed systems are only eventually consistent iff they are logically monotonic.
Coordination as used in this article basically means "needs to be decided by an authority". But because of CALM we know that in order to elect an authority/leader, you need a consensus algorithm that actually has monotonicity at it's core, like raft.
There's a really great talk on this by Heidi Howard:
https://www.youtube.com/watch?v=KTHOwgpMIiU https://www.youtube.com/watch?v=KTHOwgpMIiU
I actually don't think that database isolation levels are a good way to talk about this stuff, because they are practical guarantees, not theoretical ones. Snapshot isolation for example also requires a leader.
From a theoretical point of view there is no in between (at least none that I can see), either you are eventually consistent or you're not, either you are monotonic or you're not.