Distributed Systems

  1. Replication and Consistency
    1. Replication Fundamentals
      1. Reasons for Replication
        1. Performance Enhancement
          1. Availability Improvement
            1. Fault Tolerance
              1. Load Distribution
              2. Replication Challenges
                1. Consistency Maintenance
                  1. Update Propagation
                    1. Conflict Resolution
                    2. Replication Architectures
                      1. Master-Slave Replication
                        1. Master-Master Replication
                          1. Peer-to-Peer Replication
                        2. Consistency Models
                          1. Data-Centric Models
                            1. Strict Consistency
                              1. Sequential Consistency
                                1. Linearizability
                                  1. Causal Consistency
                                    1. FIFO Consistency
                                      1. Weak Consistency
                                        1. Release Consistency
                                          1. Entry Consistency
                                          2. Client-Centric Models
                                            1. Eventual Consistency
                                              1. Monotonic Read Consistency
                                                1. Monotonic Write Consistency
                                                  1. Read-Your-Writes Consistency
                                                    1. Writes-Follow-Reads Consistency
                                                    2. Consistency Hierarchies
                                                      1. Strong Consistency
                                                        1. Weak Consistency
                                                          1. Eventual Consistency Variants
                                                        2. Replica Management
                                                          1. Replica Placement
                                                            1. Static Placement Strategies
                                                              1. Dynamic Placement Strategies
                                                                1. Geographic Considerations
                                                                2. Update Propagation
                                                                  1. Synchronous Updates
                                                                    1. Asynchronous Updates
                                                                      1. Lazy Propagation
                                                                      2. Conflict Detection
                                                                        1. Version Vectors
                                                                          1. Conflict Identification
                                                                            1. Conflict Types
                                                                            2. Conflict Resolution
                                                                              1. Last-Writer-Wins
                                                                                1. Multi-Value Resolution
                                                                                  1. Application-Specific Resolution
                                                                                2. Consistency Protocols
                                                                                  1. Primary-Based Protocols
                                                                                    1. Remote-Write Protocols
                                                                                      1. Local-Write Protocols
                                                                                        1. Primary-Backup Protocols
                                                                                        2. Replicated-Write Protocols
                                                                                          1. Active Replication Protocols
                                                                                            1. Quorum-Based Protocols
                                                                                              1. Read Quorums
                                                                                                1. Write Quorums
                                                                                                  1. Quorum Intersection
                                                                                                2. Cache Coherence Protocols
                                                                                                  1. Write-Through Protocols
                                                                                                    1. Write-Back Protocols
                                                                                                      1. Invalidation Protocols