Opening the book…
Multiple Choice
- According to the CAP theorem, a distributed system experiencing a network partition must choose between:
- a) Speed and security
- b) Consistency and availability
- c) Cost and performance
- d) Scalability and reliability
- Which of the following is an example of a consensus algorithm?
- a) Round-robin
- b) Paxos
- c) FIFO
- d) REST
- Google's Borg system is best described as:
- a) A distributed database
- b) A cluster management and container orchestration system
- c) A load balancing algorithm
- d) A network protocol
Short Answer
- Explain the CAP theorem in your own words. Why can a distributed system only guarantee two of the three properties simultaneously during a network partition?
- What is the difference between strong consistency and eventual consistency? Give a real-world example where each would be appropriate.
- Describe how replication improves both fault tolerance and read performance in a distributed system. What challenges does replication introduce?
- Explain how Netflix's architecture handles fault tolerance. What is the Chaos Monkey tool, and what principle does it demonstrate?
True/False
- True or False: In a distributed system, increasing the number of nodes always improves performance linearly.
- True or False: The Hadoop Distributed File System (HDFS) replicates data blocks across multiple nodes to ensure fault tolerance.
- True or False: Sharding and replication solve the same problem in distributed databases.
Answer Key:
- b
- b
- b
- During a network partition, nodes cannot communicate. The system must either refuse some requests (sacrificing availability to maintain consistency) or serve possibly stale data (sacrificing consistency to maintain availability). It cannot guarantee both simultaneously.
- Strong consistency: every read sees the latest write (e.g., bank account balances). Eventual consistency: reads may temporarily return stale data but will converge (e.g., social media "likes" count).
- Replication copies data to multiple nodes, so if one fails, others serve requests (fault tolerance), and reads can be distributed (performance). Challenges: keeping replicas synchronized, handling conflicts, write amplification.
- Netflix uses microservices deployed redundantly across AWS regions. Chaos Monkey randomly terminates instances in production to verify the system can self-heal. Demonstrates the "design for failure" principle.
- False
- True
- False (Sharding distributes different data across nodes; replication copies the same data to multiple nodes)
This page titled 2.9.1: Review Questions was last modified on Tue, 22 Sep 2026 22:14:55 GMT and is shared under a CC BY 4.0 license and was authored, remixed, and/or curated by Felix Amoruwa.
The book could not be loaded just now.