Presentation is loading. Please wait.

Presentation is loading. Please wait.

Consistency in Distributed Systems

Similar presentations


Presentation on theme: "Consistency in Distributed Systems"— Presentation transcript:

1 Consistency in Distributed Systems
By Amanda Carbonari and Thaddeus M. Diede 9/22/2018 CS 455: Introduction to distributed systems Dept. of computer science, Colorado state university

2 Why is Consistency Important?
Consistency – The state of shared and replicated resources amongst the servers and nodes of a distributed computing system Agreement on the value by all components: consistent state. Fundamental feature in a distributed system design Reliability, scalability, system performance Consistency issues arose out of employing remote replication for Increased reliability Better load balancing 9/22/2018 CS 455: Introduction to distributed systems Dept. of computer science, Colorado state university

3 Problem Characterization
Viewed from client side or server side Fundamental types of consistency (server side): Strong – Perpetual consistency, immediate consistency Optimistic – Implements values locally, then propagates values remotely. Conflicts resolved using revision histories Causal – Updates first at nodes with causal relationship to datum, uses eventual consistency for non-causal members. Sequential – Similar to strong, specifies a strict order of instructions to be propagated. Cache – The value read is the most recent value stored on the local or nearest system. 9/22/2018 CS 455: Introduction to distributed systems Dept. of computer science, Colorado state university

4 Trade-off Space for Solutions in Consistency
CAP Theorem and PACELC extension CAP: Designers must choose between two of the three properties PACELC: evaluates tradeoff space depending on system operation (normal or partitioned) Consistency vs. Availability Increasing consistency reduces availability by introducing more latency in the system Consistency vs. Scalability Some consistency models require more memory or messages as the system scales up, hindering scalability 9/22/2018 CS 455: Introduction to distributed systems Dept. of computer science, Colorado state university

5 Dominant Approaches to Consistency
Approaches vary by system type Paxos Server to client distributed systems Servers can fail and restart, must reload information Node types: Acceptors, Proposers, Learners Issue: Live lock problem General Distributed Shared Memory (DSM) Algorithm Sequential, causal, cache models available User selects which to use For each process, all writes in a cycle are written to one message to minimize network load Issues: scalability and fault tolerance 9/22/2018 CS 455: Introduction to distributed systems Dept. of computer science, Colorado state university

6 Insights Gleaned There is no single general solution
PAXOS – server to client interaction The trade-offs require development of creative solutions for each application The modern network-collaboration tools rely heavily on consistency The accuracy, reliability, and scalability of these services can be seen in the effect they have had on contemporary culture, politics, and economics Virtual communities – Reddit, Facebook Disaster response – Google Person Finder Public mobilization – Twitter, FireChat 9/22/2018 CS 455: Introduction to distributed systems Dept. of computer science, Colorado state university

7 The Problem Space in the Future
The future of consistency will depends on advances in . . . Distributed Systems Clock synchronization, scalability, reduced network overhead, and in-memory processing Computer Architecture Faster CPU or IO speeds and cheaper memory The use of distributed systems Current Trend: “put everything on the cloud” Possible directions Mainstream use: home computer systems, computer stick, etc. Gaming: multiplayer online virtual reality games (Samsung Oculus Rift) 9/22/2018 CS 455: Introduction to distributed systems Dept. of computer science, Colorado state university

8 Trade-off Space and Solutions in the Future
Similar to current trade-off space Scalability and Fault Tolerance Low Latency Solutions Flexible “out of the box” algorithms: Allow users to choose model for system Only include beneficial models for that system Achieving consistency in some areas will be easier, some will be harder Distributed home computer system = easy Virtual Reality Multiplayer Online gaming = difficult 9/22/2018 CS 455: Introduction to distributed systems Dept. of computer science, Colorado state university

9 Conclusion There will not be single general solution for all systems
CAP/PACELC Theorem Developers must determine solution per system based on trade-offs System Requirements Consistency Models Weaker consistency models tend to be the dominant approach Provide more flexibility with system implementation OVERALL: CAP will always dictate solutions in distributed system consistency 9/22/2018 CS 455: Introduction to distributed systems Dept. of computer science, Colorado state university

10 Questions? 9/22/2018 CS 455: Introduction to distributed systems Dept. of computer science, Colorado state university


Download ppt "Consistency in Distributed Systems"

Similar presentations


Ads by Google