Epidemic Algorithms for replicated Database maintenance Alan Demers et al Xerox Palo Alto Research Center, PODC 87 Presented by: Harshit Dokania.

Slides:



Advertisements
Similar presentations
Gossip Protocols from Epidemic Algorithms for Replicated Database Maintenance, Alan Demers et al Russell Greenspan CS523 Spring, 2006.
Advertisements

COS 461 Fall 1997 Group Communication u communicate to a group of processes rather than point-to-point u uses –replicated service –efficient dissemination.
Replication. Topics r Why Replication? r System Model r Consistency Models r One approach to consistency management and dealing with failures.
Replication Management. Motivations for Replication Performance enhancement Increased availability Fault tolerance.
Amazon’s Dynamo Simple Cloud Storage. Foundations 1970 – E.F. Codd “A Relational Model of Data for Large Shared Data Banks”E.F. Codd –Idea of tabular.
School of Information University of Michigan Network resilience Lecture 20.
The SMART Way to Migrate Replicated Stateful Services Jacob R. Lorch, Atul Adya, Bill Bolosky, Ronnie Chaiken, John Douceur, Jon Howell Microsoft Research.
RUMOR SPREADING “Randomized Rumor Spreading”, Karp et al. Presented by Michael Kuperstein Advanced Topics in Distributed Algorithms.
Epidemic Techniques Algorithms and Implementations.
P2p, Spring 05 1 Topics in Database Systems: Data Management in Peer-to-Peer Systems Διαδικαστικά  Αύριο, Τετάρτη 18 Μαΐου 12:00 – 13:00 Ομιλία σε p2p.
Kaushik Parasam 03 Nov, 2011 EPIDEMIC TECHNIQUES.
1 CS 525 Advanced Distributed Systems Spring 09 Indranil Gupta Lecture 7 More on Epidemics (or “Tipping Point Protocols”) February 12, 2009 (gatorlog.com)
Gossip Algorithms and Implementing a Cluster/Grid Information service MsSys Course Amar Lior and Barak Amnon.
Feb 7, 2001CSCI {4,6}900: Ubiquitous Computing1 Announcements.
Lecture 7 Data distribution Epidemic protocols. EECE 411: Design of Distributed Software Applications Epidemic algorithms: Basic Idea Idea Update operations.
Reliable Group Communication Quanzeng You & Haoliang Wang.
Parallel and distributed databases II. Some interesting recent systems MapReduce Dynamo Peer-to-peer.
1 Awareness Services for Digital Libraries Arturo Crespo Hector Garcia-Molina Stanford University.
Ranveer Chandra , Kenneth P. Birman Department of Computer Science
Small-world Overlay P2P Network
P2p, Fall 06 1 Topics in Database Systems: Data Management in Peer-to-Peer Systems.
Distributed Systems Fall 2010 Replication Fall 20105DV0203 Outline Group communication Fault-tolerant services –Passive and active replication Highly.
“Managing Update Conflicts in Bayou, a Weekly Connected Replicated Storage System” Presented by - RAKESH.K.
Scaling Distributed Machine Learning with the BASED ON THE PAPER AND PRESENTATION: SCALING DISTRIBUTED MACHINE LEARNING WITH THE PARAMETER SERVER – GOOGLE,
Peer to Peer File Sharing Huseyin Ozgur TAN. What is Peer-to-Peer?  Every node is designed to(but may not by user choice) provide some service that helps.
Computer Science Lecture 16, page 1 CS677: Distributed OS Last Class: Web Caching Use web caching as an illustrative example Distribution protocols –Invalidate.
Manajemen Basis Data Pertemuan 10 Matakuliah: M0264/Manajemen Basis Data Tahun: 2008.
Distributed Systems CS Case Study: Replication in Google Chubby Recitation 5, Oct 06, 2011 Majd F. Sakr, Vinay Kolar, Mohammad Hammoud.
Distributed Systems Fall 2009 Replication Fall 20095DV0203 Outline Group communication Fault-tolerant services –Passive and active replication Highly.
Hands-On Microsoft Windows Server 2003 Networking Chapter 7 Windows Internet Naming Service.
G Robert Grimm New York University Bayou: A Weakly Connected Replicated Storage System.
EEC 688/788 Secure and Dependable Computing Lecture 14 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
1 Awareness Services for Digital Libraries Arturo Crespo Hector Garcia-Molina Stanford University.
MarketNet Directory Services (MDS) Weibin Zhao Henning Schulzrinne Department of Computer Science Columbia University.
Epidemic Techniques Chiu Wah So (Kelvin). Database Replication Why do we replicate database? – Low latency – High availability To achieve strong (sequential)
Definition of terms Definition of terms Explain business conditions driving distributed databases Explain business conditions driving distributed databases.
EEC 693/793 Special Topics in Electrical Engineering Secure and Dependable Computing Lecture 14 Wenbing Zhao Department of Electrical and Computer Engineering.
Correctness of Gossip-Based Membership under Message Loss Maxim Gurevich, Idit Keidar Technion.
Multicast Communication Multicast is the delivery of a message to a group of receivers simultaneously in a single transmission from the source – The source.
EPIDEMIC TECHNIQUES Ki Suh Lee. OUTLINE Epidemic Protocol Epidemic Algorithms for Replicated Database Maintenance Astrolabe: A Robust and scalable technology.
Distributed Data Stores – Facebook Presented by Ben Gooding University of Arkansas – April 21, 2015.
Consistent Hashing: Load Balancing in a Changing World
Communication (II) Chapter 4
1 6.4 Distribution Protocols Different ways of propagating/distributing updates to replicas, independent of the consistency model. First design issue.
Consistency And Replication
Gossip Techniques Makoto Bentz Oct. 27, 2010.
Overcast: Reliable Multicasting with an Overlay Network CS294 Paul Burstein 9/15/2003.
Massively Distributed Database Systems - Distributed DBS Spring 2014 Ki-Joune Li Pusan National University.
Module 7: Resolving NetBIOS Names by Using Windows Internet Name Service (WINS)
Group 3 Sandeep Chinni Arif Khan Venkat Rajiv. Delay Tolerant Networks Path from source to destination is not present at any single point in time. Combining.
MapReduce and GFS. Introduction r To understand Google’s file system let us look at the sort of processing that needs to be done r We will look at MapReduce.
IM NTU Distributed Information Systems 2004 Replication Management -- 1 Replication Management Yih-Kuen Tsay Dept. of Information Management National Taiwan.
Fault Tolerant Services
Chap 7: Consistency and Replication
Replication (1). Topics r Why Replication? r System Model r Consistency Models r One approach to consistency management and dealing with failures.
© Spinnaker Labs, Inc. Chubby. © Spinnaker Labs, Inc. What is it? A coarse-grained lock service –Other distributed systems can use this to synchronize.
Chapter 7: Consistency & Replication IV - REPLICATION MANAGEMENT By Jyothsna Natarajan Instructor: Prof. Yanqing Zhang Course: Advanced Operating Systems.
Antidio Viguria Ann Krueger A Nonblocking Quorum Consensus Protocol for Replicated Data Divyakant Agrawal and Arthur J. Bernstein Paper Presentation: Dependable.
THE EVOLUTION OF CODA M. Satyanarayanan Carnegie-Mellon University.
Mobility Victoria Krafft CS /25/05. General Idea People and their machines move around Machines want to share data Networks and machines fail Network.
Nomadic File Systems Uri Moszkowicz 05/02/02.
Distributed Systems – Paxos
Gossip-based Data Dissemination
湖南大学-信息科学与工程学院-计算机与科学系
Chapter 7: Consistency & Replication IV - REPLICATION MANAGEMENT -Sumanth Kandagatla Instructor: Prof. Yanqing Zhang Advanced Operating Systems (CSC 8320)
Replica Placement Model: We consider objects (and don’t worry whether they contain just data or code, or both) Distinguish different processes: A process.
Last Class: Web Caching
Overview Multimedia: The Role of WINS in the Network Infrastructure
The SMART Way to Migrate Replicated Stateful Services
Presentation transcript:

Epidemic Algorithms for replicated Database maintenance Alan Demers et al Xerox Palo Alto Research Center, PODC 87 Presented by: Harshit Dokania

Motivation Replicated Databases Availability, Fault – tolerant, Faster reads Consistency Eventual Consistency : Epidemic Algorithms Faster reads, writes

Why Consistency ? Add $1000 to John’s Account Replica 1 Replica 2 Replica 3 Add $1000 to John’s Account ACK Done!! Ram informs John money has been deposited. Get my Balance Get John’s Balance $50 How to propagate updates? Ram John

How to Propagate Updates? Direct Mail Anti-entropy - Simple Epidemic infected or susceptible sites Rumor Mongering – Complex Epidemic infected, susceptible and removed Goal: For all s, s’ € S: s.valueOf = s’.valueOf

Direct Mail Update[v : V] = s.ValueOf <——(v, GMT) Messages are queued, stable storage Queue overflow s Not everybody knows everybody Source site = O(n) messages Traffic = # sites * Average distance b/w the sites Reliable but… Anti-Entropy in Background

Anti-Entropy Key (Name) Value (Bal) Time (GMT) Ram John Sam Key (Name) Value (Bal) Time (GMT) Ram John Sam Key (Name) Value (Bal) Time (GMT) Ram John50100 Sam Slower than Direct Mail ? Distribute update to few sites Push, Pull, Push - Pull Select Random Site Resolve Conflicts

Push vs Pull o Pull p i = Probability of a site remaining susceptible after the i th cycle Only if it Selects susceptible site in i+1 st cycle p i+1 = (p i ) 2 ≈ 0 o Push Only if No infectious site chose to contact susceptible site p i+1 = p i (1-1/n) n(1-p i ) = p i e -1 ≈ 0 (less rapidly) But Anti-Entropy is Expensive!!!

Anti-Entropy is Expensive o Usually Databases are in “nearly” complete agreement Then why send entire Database across network ? o Exchange Database only if checksum of Database disagree Time to update to all sites > Interval between the updates o Recent update list that contains all new changes for time window ť t’ MUST > Time required to distribute the update o Exchange recent update list, then compare checksums Checksums agree, Less traffic, Less Database compariso n

Rumor Mongering s s s s Infected Susceptible “hot rumor” k=1 s s Removed Convergence, i = 0 s = ? Residue

Counter vs Probability Become removed after k unnecessary contacts Counter k Residue s Traffic m Converge t ave |t last Counter k Residue s Traffic m Converge t ave |t last Response and Counters Blind and Probabilistic Push, RM Convergence Traffic Residue

Push vs Pull o Numerous updates Susceptible can find infective with high Probability Counter k Residue s Traffic m Convergenc e t ave | t last 13.1 * * * Exchange counters If both know the update Increment the site with smaller counter Push gets better than Pull with connection limit. How? Two sites contact the same recipient One gets rejected Still gets the update Two sites contact the same infected site One gets rejected Only 1 site updated Pull, Response and Counters

Direct Mail vs Rumor o Both has no guarantee - Anti-entropy is the key o But what if Anti- entropy finds conflicts ? - Let it be… - Clearinghouse uses Direct Mail for redistribution Worst case : DM Manages to deliver an update half the sites Later AE-DM generates O(n 2 ) messages or AE-RM generates O(n) messages

How do we delete? Key (Name) Value (Bal) Time (GMT) Ram John Sam Key (Name) Value (Bal) Time Ram Sam Key (Name) Value (Bal) Time (GMT) Ram John Sam Delete my account John Key (Name) Value (Bal) Time (GMT) Ram John Sam Key (Name) Value (Bal) Time (GMT) Ram John Sam Resurrection with obsolete DB

Death Certificates Key (Name) Value (Bal) Time Ram John Sam Key (Name) Value (Bal) Time Ram Sam Key (Name) Value (Bal) Time (GMT) Ram John Sam Delete my account John Key (Name) Value (Bal) Time (GMT) Ram Sam Delete John, 120 Delete John, 120 Key (Name) Value (Bal) Time (GMT) Ram Sam Looks Easy !!! But when do we delete Death Certificates

Delete Death Certificates o Delete them after 30 days Still has risk of resurrection o Sarin and Lynch propose Chandy-Lamport snapshot algorithm Records Application messages when sees duplicate Marker messages Snapshot ensures Death certificate received at all sites But what when site permanently fails?

Dormant Death Certificates o Delete death certificates at most sites -But retain Dormant death certificates at some retention sites “r” o Obsolete update encounters Dormant certificate Activate Death certificate -Original timestamp, Activation timestamp o Much larger threshold for Dormant Death Certificates o But lost due to permanent server failures p fail = 2 -r

Spatial Distribution o Saves significant amount of traffic o probability of connecting site at distance d= d -a when a = 2 ; convergence is polynomial in log n Generalized for CIN with distribution d -2D dependent on dimension of mesh ‘D’ o Q s (d) = sites at distance d or less from s arbitrary network Best Scaling

Using Spatial Distribution o Anti-Entropy Uniform distribution ≈ 80 conversations on critical links Expected traffic per link per cycle < 6 conversations Q s (d) adapts well to “local dimension” o Rumor Mongering Making it less sensitive for sudden increases in Q s (d) Each site s builds a list of sites sorted by distance For a = 2 again complexity is O(d -2d )

Simulation Results: AE Distributiont last | t ave Compare Traffic Avg | Critical Uniform a = a = a = a = a = Distributiont last | t ave Compare Traffic Avg | Critical Uniform a = a = a = a = a = Push-Pull, No Connection limit Push-Pull, Connection limit 1 Increase in convergence < factor of 2 Decrease in Average traffic ≈ factor of 4 Frequent anti-entropy Massive decrease in compare traffic for transatlantic links > factor of 30 Connection limit reduces the compare traffic/cycle but increases the number of cycles

Simulation Results: RM Distribution kt last | t ave Compare traffic Avg | Bushey Update traffic Avg | Bushey Uniform a = a = a = a = a = Feedback, Counter, Push-Pull, No connection limit With increase in “a”, k increases gradually Convergence time increases Decrease in Average traffic ≈ factor of 3 Massive decrease in compare traffic for transatlantic links > factor of 30

Discussion o Anti- Entropy is robust than Rumor Mongering Rumors may become inactive leaving sites susceptible o Push ξ Pull much sensitive to spatial distribution than Push-Pull (RM) k = 36 for a = 1.2 (Push, Feedback, No connection limit, Counter) o Anti - Entropy with distribution of d -2 was implemented at CIN Massive improvement in network load ξ consistency

Cons/Questions Storage, Death Certificates Irregular Network Topologies - Dynamic Hierarchy