
Explore tens of thousands of sets crafted by our community.
Synchronization Mechanisms
12
Flashcards
0/12
Consistency Models
Describe the set of rules for the visibility of updates in a distributed system to achieve consistency. They are critical in designing distributed databases and cache consistency protocols.
Two-Phase Commit (2PC)
A distributed algorithm used to achieve consensus among nodes in a distributed system to ensure that either all nodes commit to a transaction or none do. It guarantees atomicity but can be a performance bottleneck and is not fault-tolerant of coordinator failure.
Idempotent Operations
Operations that can be applied multiple times without changing the result beyond the initial application. Idempotency is crucial for reliability in a distributed system, especially in the face of network and system failures.
Event Sourcing
An architectural pattern where state changes are logged as a sequence of events. This allows distributed systems to rebuild state by replaying the event log, facilitates event replay for debugging, and enables complex event stream analysis.
Vector Clocks
A mechanism for capturing causality in a distributed system without relying on synchronized physical clocks. They are used to track the partial ordering of events and to detect concurrency.
CAP Theorem
States that it is impossible for a distributed data store to simultaneously guarantee Consistency, Availability, and Partition Tolerance. It helps system designers to understand trade-offs while designing distributed systems.
Paxos
A consensus algorithm that works in a network with unreliable nodes. Paxos ensures that a single value is chosen by a set of proposers even in the event of message losses or failures, but it can be complex to implement.
Raft
A consensus algorithm designed for understandability. Raft achieves the same goal as Paxos but with a more structured approach, by electing a leader to manage the log replication process.
Logical Clocks
A method for capturing temporal ordering of events in a distributed system. Logical clocks do not measure physical time but an arbitrary sequence that provides a partial ordering of events.
Distributed Transactions
Transactions that span multiple nodes in a distributed system. They must ensure ACID properties (Atomicity, Consistency, Isolation, Durability) across all involved nodes.
Distributed Locking
A technique to prevent concurrent access to a shared resource in a distributed environment. It prevents conflicts and ensures serialized access to resources.
Gossip Protocols
Communication protocols used to spread information in a distributed system, akin to human gossip. They are robust and scalable but do not guarantee immediate consistency.
© Hypatia.Tech. 2024 All rights reserved.