The CAP theorem states that it is impossible for a distributed database to simultaneously guarantee two of the following: Consistency, availability or partition tolerance. The widely accepted theorem is often used to analyze and position new databases.
In this session, we will explore the three guarantees, deliver a definition for each and outline how each might affect your distributed system. This is a rather academic talk and hopefully, we will help you understand the history of the CAP theorem and how to use this important concept to your advantage.
We will cover:
- The challenges to ensuring consistent distributed data
- The availability challenges for a distributed database
- Challenges in dealing with network failures and dropped messages
- RAFT, MVCC and other algorithms
- And explanation of CP and CA databases and how they are used
- How CockroachDB delivers on these key traits