Consistency in System Design
Consistency is referred to as data uniformity in systems.
When a user requests data, the system always returns the same data, regardless of the user’s location, time, etc. Before a user receives data from any node, the server at which the data is updated or changed should successfully replicate the new data to all the nodes.
In order to understand consistency in simpler terms:
- Consider three nodes X, Y, and Z in a system, where very little t1 time is taken for data transmission for replication from X to Y and t2 from X to Z.
- Now the maximum among t1 and t2 is taken where no user is supposed to fetch info so as to avoid to get inconsistency in data by providing older records.
Example: Account Transactions
Note: If the users gets the data somehow because of inconsistency in systems, it is known as Dirty Reading.
Important Key Concepts and Terminologies – Learn System Design
System Design is the core concept behind the design of any distributed systems. System Design is defined as a process of creating an architecture for different components, interfaces, and modules of the system and providing corresponding data helpful in implementing such elements in systems.
In this article, we’ll cover the standard terms and key concepts of system design and performance, such as:
- Latency,
- Throughput,
- Availability,
- Redundancy,
- Time
- CAP Theorem
- Lamport’s Logical Clock Theorem.
Let us see them one by one.