Lesson 1Consistency types: strong, causal, eventual, read-your-writes, monotonic readsLooks into how data stays consistent in distributed setups, like strong, causal, and eventual ways, plus read-your-writes and monotonic reads. It explains what they promise, what can go wrong, and how apps pick ones that fit what users expect.
Strong consistency guaranteesEventual consistency and convergenceCausal consistency and orderingRead-your-writes and monotonic readsChoosing models for applicationsLesson 2Distributed agreement methods: Paxos, Raft, and real uses (etcd, Consul)Shows Paxos and Raft ways to agree in distributed systems and their jobs in picking leaders, copying logs, and changing setups. Then links ideas to real tools like etcd and Consul for managing info, locks, and working together.
Consensus problem and safety goalsPaxos algorithm core ideasRaft algorithm and log replicationCluster membership and reconfigurationUsing etcd and Consul in practiceLesson 3Splitting and dividing strategies: range, hash, and list-basedGoes into detail on splitting and dividing data strategies, like range, hash, and list-based ways. Focuses on spreading data, avoiding busy spots, rebalancing, and directing traffic, and picking and changing a plan as work and data grow.
Range-based partitioning designHash-based sharding and hashingDirectory and lookup-based routingRebalancing and resharding methodsAvoiding hotspots and skewed keysLesson 4Copying models: leader-follower, multi-leader, and no-leader waysCovers leader-follower, multi-leader, and no-leader copying. Explains paths for writes and reads, handling failures, delays, and fixing clashes, and how each way affects speed, amount handled, lasting data, and running in worldwide setups.
Leader-follower replication flowsMulti-leader replication and conflictsLeaderless quorum-based replicationReplication lag and read consistencyOperational trade-offs of each modelLesson 5CAP rule and choices between up-to-date, available, and split-proofLooks at the CAP rule and what it means for distributed databases. Clears up how up-to-date data, being available, and handling splits work together, and how real systems handle choices with practical designs and service goals.
Formal statement of the CAP theoremConsistency vs availability in practicePartition tolerance in real networksDesigning around CAP with SLAsLesson 6Network splits, delays, and failure ways over wide linksChecks how network splits, delays, and failures show up over wide area links. Covers timeouts, part failures, and split-brain issues, and how to plan spotting, retries, and slowdown plans to keep systems steady under pressure.
Characteristics of WAN linksDetecting partitions and timeoutsHandling partial and asymmetric failuresSplit-brain risks and mitigationGraceful degradation strategiesLesson 7Safe repeats, retries, and at-least-once vs exactly-once meaningsExplains safe repeats and their job in safe retries. Tells apart at-least-once, at-most-once, and exactly-once meanings, and shows ways for removing duplicates, tracking requests, and handling messages in shaky distributed places.
Defining idempotent operationsDesigning safe retry mechanismsAt-least-once vs at-most-onceExactly-once semantics limitationsDeduplication and request trackingLesson 8Handling multiple changes: hopeful vs careful, MVCC, clash fixing waysLooks at handling multiple changes in distributed databases. Compares hopeful and careful ways, explains MVCC inside workings, and shows clash spotting and fixing ways that keep things right while allowing lots of changes at once.
Pessimistic locking in distributed systemsOptimistic control and validationMVCC snapshots and version chainsConflict detection and resolutionDeadlocks, timeouts, and retriesLesson 9Setup patterns: one area, active-passive, active-active, and mixedDescribes physical setup patterns for distributed databases, like one area, active-passive, active-active, and mixed. Checks their effects on speed, switchover, data sameness, and running trouble.
Single-region deployment trade-offsActive-passive failover patternsActive-active multi-region setupsHybrid and tiered topology designsLatency, RPO, and RTO considerations