Distributed Systems Flashcards
(47 cards)
What is a distributed system?
A distributed system is a network of independent computers that work together as a single system to achieve a common goal.
Example: DO Droplets - a virtual machine that runs on one of many physical servers in a distributed infrastructure.
DOKS - Control plane and worker nodes run across multiple machines.
These services rely on principles like fault tolerance, replication, autoscaling, and consistent distributed state—all core concepts of distributed systems.
What are the main goals of a distributed system?
Scalability, fault tolerance, availability, and transparency.
What is CAP theorem?
CAP theorem states that a distributed system can only guarantee two of the following three: Consistency, Availability, and Partition Tolerance.
What is consistency in CAP theorem?
All nodes see the same data at the same time.
What is availability in CAP theorem?
Every request receives a response, without guarantee that it contains the most recent data.
What is partition tolerance in CAP theorem?
The system continues to operate despite arbitrary message loss or failure of part of the system.
What is eventual consistency?
A consistency model where updates to a database will propagate and eventually all nodes will converge to the same value.
What is strong consistency?
A consistency model where a system behaves as if there is only a single copy of the data.
What is a quorum in distributed systems?
A minimum number of votes needed to perform an operation to ensure consistency.
What is sharding?
Sharding is the practice of breaking up a database into smaller, faster, more easily managed parts called shards.
What is a distributed hash table (DHT)?
A DHT is a decentralized system that provides a lookup service similar to a hash table.
What is a gossip protocol?
A communication protocol where nodes randomly exchange information to propagate data.
What is a consensus algorithm?
A mechanism to achieve agreement on a single data value among distributed systems.
Name three consensus algorithms.
Paxos, Raft, and Byzantine Fault Tolerance.
What is Raft?
A consensus algorithm designed to be understandable and provide fault-tolerance by electing a leader.
What is leader election?
The process of designating a single node as the organizer of tasks in a distributed system.
What is a distributed lock?
A mechanism to ensure mutual exclusion in a distributed system.
What is vector clock?
A mechanism for capturing causality between events in distributed systems.
What is Lamport timestamp?
A method for ordering events in a distributed system using logical clocks.
What are the challenges of distributed systems?
Network partitions, clock synchronization, partial failures, and consistency issues.
What is cloud computing?
The delivery of computing services over the internet with on-demand access.
What are the three main cloud service models?
Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS).
What is IaaS?
Provides virtualized computing resources over the internet.
What is PaaS?
Provides a platform allowing customers to develop, run, and manage applications.