When you look seriously at database availability, you always come back to one question: "The data I just committed—if a server dies, I don't want to lose it. Someone has to hold a copy of that data. When, how many copies, and where should they be?" The answers diverge at a critical juncture: synchronous vs. asynchronous replication? Single AZ or multi-AZ? 2-copy or 6-copy quorum? AWS's RDS Multi-AZ, Aurora, and ElastiCache look like simple "high availability with a checkbox" options, but underneath lie distributed systems theory accumulated since the 1970s—replication, consensus, quorum, CAP