Amazon Aurora: Avoiding Distributed Consensus for I/Os, Commits, Membership
blog.acolyer.org
blog.acolyer.org
But the idea of switching from a single leader to a quorum and then using the metadata to commit to overlapping quorum groups in order to preserve this transitive property between orderings was just really really slick.
About three years ago there was an early presentation about the backend https://www.youtube.com/watch?v=-TbRxwcux3c which made it just seem like the 4/6 thing just had to do with a normal replicated database or so, it seemed like a fixed topology to do with their availability zones—I didn't realize that they were also dealing with some sort of consensus overhead to enable swapping new nodes in or out.
There was also a somewhat marketingy presentation about this technology in the deep dive at https://www.youtube.com/watch?v=U42mC_iKSBg which I confess kinda went over my head at the time, so these two blog articles are a wonderful condensing of the heart of the service for me. None of the companies I've worked for has made much use of Amazon but it's a really clever idea that certainly deserves to kick around in the back of folks' heads.
An interesting unit for this kind of design outside the cloud would be a single rack of servers (or however much you can hook up to one switch)--assure pretty low latency to your remote RAM/disk.
(I'm not complaining, I love his blog)
[1]: https://www.confluent.io/blog/turning-the-database-inside-ou...