Distributed Replicated FIFO Queue 1.State Machine Approach (One copy of the Queue on each replica) 2.Quorun Consensus 1.Can we use the approach above?

Slides:



Advertisements
Similar presentations
Algorithms (and Datastructures) Lecture 3 MAS 714 part 2 Hartmut Klauck.
Advertisements

Chapter 12 Message Ordering. Causal Ordering A single message should not be overtaken by a sequence of messages Stronger than FIFO Example of FIFO but.
Linearizability Linearizability is a correctness criterion for concurrent object (Herlihy & Wing ACM TOPLAS 1990). It provides the illusion that each operation.
Consistency and Replication Chapter 7 Part II Replica Management & Consistency Protocols.
Failure Detection The ping-ack failure detector in a synchronous system satisfies – A: completeness – B: accuracy – C: neither – D: both.
1 Unit & District Tools Phase 1. 2 To access the new Unit and District Tools, you will need to click on the link embedded in the MyScouting Flash page.
Replication Management. Motivations for Replication Performance enhancement Increased availability Fault tolerance.
CSE 486/586, Spring 2013 CSE 486/586 Distributed Systems Byzantine Fault Tolerance Steve Ko Computer Sciences and Engineering University at Buffalo.
Consistency and Replication (3). Topics Consistency protocols.
DISTRIBUTED SYSTEMS II REPLICATION CNT. II Prof Philippas Tsigas Distributed Computing and Systems Research Group.
DISTRIBUTED SYSTEMS II REPLICATION –QUORUM CONSENSUS Prof Philippas Tsigas Distributed Computing and Systems Research Group.
CS 582 / CMPE 481 Distributed Systems
CPSC 668Set 12: Causality1 CPSC 668 Distributed Algorithms and Systems Fall 2009 Prof. Jennifer Welch.
S A B D C T = 0 S gets message from above and sends messages to A, C and D S.
G Robert Grimm New York University Bayou: A Weakly Connected Replicated Storage System.
GentleRain: Cheap and Scalable Causal Consistency with Physical Clocks Jiaqing Du | Calin Iorgulescu | Amitabha Roy | Willy Zwaenepoel École polytechnique.
The Google File System.
More on Replication and Consistency CS-4513 D-term More on Replication and Consistency CS-4513 Distributed Computing Systems (Slides include materials.
Trees & Graphs Nell Dale & John Lewis (adaptation by Michael Goldwasser and Erin Chambers)
CHAPTER 05 Compiled by: Dr. Mohammad Omar Alhawarat Stacks & Queues.
Microsoft Access Get a green book. Page AC 2 Define Access Define database.
Chapter 9 (modified) Abstract Data Types and Algorithms Nell Dale John Lewis.
David Stotts Computer Science Department UNC Chapel Hill.
Practical Byzantine Fault Tolerance
From Viewstamped Replication to BFT Barbara Liskov MIT CSAIL November 2007.
Hierarchical Quorum Consensus: A New Algorithm for Managing Replicated Data Akhil Kumar IEEE TRANSACTION ON COMPUTERS, VOL.40, NO.9, SEPTEMBER 1991.
1 ZYZZYVA: SPECULATIVE BYZANTINE FAULT TOLERANCE R.Kotla, L. Alvisi, M. Dahlin, A. Clement and E. Wong U. T. Austin Best Paper Award at SOSP 2007.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Chapter 7 Consistency.
Byzantine fault tolerance
Practical Byzantine Fault Tolerance and Proactive Recovery
IM NTU Distributed Information Systems 2004 Replication Management -- 1 Replication Management Yih-Kuen Tsay Dept. of Information Management National Taiwan.
Eduardo Gutarra Velez. Outline Distributed Filesystems Motivation Google Filesystem Architecture The Metadata Consistency Model File Mutation.
Cousin of the Stack.  An abstract data type (container class) in which items are entered at one end and removed from the other end  First In First.
Linearizability Linearizability is a correctness criterion for concurrent object (Herlihy & Wing ACM TOPLAS 1990). It provides the illusion that each operation.
Byzantine Fault Tolerance CS 425: Distributed Systems Fall 2012 Lecture 26 November 29, 2012 Presented By: Imranul Hoque 1.
Fault Tolerant Services
CIS 720 Distributed Shared Memory. Shared Memory Shared memory programs are easier to write Multiprocessor systems Message passing systems: - no physically.
Chapter 4 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University Building Dependable Distributed Systems.
Linearizability Linearizability is a correctness criterion for concurrent object (Herlihy & Wing ACM TOPLAS 1990). It provides the illusion that each operation.
Spring 2003CS 4611 Replication Outline Failure Models Mirroring Quorums.
An Efficient and Fault-Tolerant Solution for Distributed Mutual Exclusion by D. Agrawal, A.E. Abbadi Presentation by Peter Tsui for COEN 317, F/03.
Hwajung Lee.  Improves reliability  Improves availability ( What good is a reliable system if it is not available?)  Replication must be transparent.
Linearizability Linearizability is a correctness criterion for concurrent object (Herlihy & Wing ACM TOPLAS 1990). It provides the illusion that each operation.
Replication Improves reliability Improves availability ( What good is a reliable system if it is not available?) Replication must be transparent and create.
Reliable Communication in the Presence of Failures Kenneth P. Birman and Thomas A. Joseph Presented by Gloria Chang.
Token-passing Algorithms Suzuki-Kasami algorithm The Main idea Completely connected network of processes There is one token in the network. The holder.
CREATED BY: KARLA LECHUGA GOOGLE FORMS. LET’S GET STARTED For this lab assignment you will need: A computer with internet connection An account with Google.
DISTRIBUTED SYSTEMS II REPLICATION CNT. II Prof Philippas Tsigas Distributed Computing and Systems Research Group.
CS 425 / ECE 428 Distributed Systems Fall 2015 Indranil Gupta (Indy) Oct 1, 2015 Lecture 12: Mutual Exclusion All slides © IG.
1 Highly available services  we discuss the application of replication techniques to make services highly available. –we aim to give clients access to.
Ordering of Events in Distributed Systems UNIVERSITY of WISCONSIN-MADISON Computer Sciences Department CS 739 Distributed Systems Andrea C. Arpaci-Dusseau.
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS
Unit & District Tools Phase 1
Kafka & Samza Weize Sun.
Representing Sets (2.3.3) Huffman Encoding Trees (2.3.4)
Consistency and Replication
View Change Protocols and Reconfiguration
Distributed systems II Replication Cnt.
Outline Announcements Fault Tolerance.
Linearizability Linearizability is a correctness criterion for concurrent object (Herlihy & Wing ACM TOPLAS 1990). It provides the illusion that each operation.
Go to link above Create account Create a sign up
EEC 688/788 Secure and Dependable Computing
From Viewstamped Replication to BFT
EEC 688/788 Secure and Dependable Computing
Distributed Shared Memory
View Change Protocols and Reconfiguration
EEC 688/788 Secure and Dependable Computing
EEC 688/788 Secure and Dependable Computing
5/20/2017 Bay Ridge Bruce Reiter
Presentation transcript:

Distributed Replicated FIFO Queue 1.State Machine Approach (One copy of the Queue on each replica) 2.Quorun Consensus 1.Can we use the approach above? 1

Distributed Replicated FIFO Queue 1.State Machine Approach (One copy of the Queue on each replica) 2.Quorun Consensus: 1.Propably representing a state machine does not help here. Instead represent the queue as a log of versioned entries: 1.enq(x) 2.enq(y) 3.deq(x) 2

FIFO Queue Can we use the log representation of the FIFO queue to build a distributed highly available queue based on quorum consensus? Enter enq or deq:  Read queue version  Compute new version  Write new version Make sure that all quorums intersect! 3

FIFO Queue  Here is a new replication protocol: Definition: To merge a log: –Short entries in version order –Discard Duplicates –Merge logs from the initial read operation –Reconstruct object’s state from log –Apply operation and compute new entry –Append new entry to log and write log to the the final quorum –Each replica merges logs 4

5

6

7

Log Compaction  Here is a more compact queue representation: –No deq records –The event horizon: enq version of most recently dequed item –The sequence of undequed enq entries To merge: –take latest event horizon –Discrad earlier enq entries –Sort remaining enq entries, discard duplicates Replicas can send event horizons in ”gossip” messages. Page (21) 8

Log Compaction  Event horizons are type-specific, but many similar ideas can work  Garbage collection: –Local: discard entries that can’t effect the future –Non-local use background ”gossip” to discard entries. 9

Quorum Assignments  How are quorums chosen? –deq needs to know about earlier enq operations –deq needs to know about earlier deq operations –enq does not need to know about other operations 10

Depends-On Relation  Let –D be a relation on opertions –h any operation sequence –and p any operation A view of h to p is a sequence of g of h contains every q such that pDq If g contains q, then it contains any earlier r such that qDr Definition: D is a depends-on relation if whenever g.p is legal, so is h.p 11

Depends-On relation  Quorum consensus replication is correct if and only if the quorum intersection is a depends-on relation 12