This talk is about. Data consistency in 3D. Geo-replicated database q: Queue c: Counter { q c } Shared database q: Queue c: Counter { q c }
|
|
- Alexina Hicks
- 5 years ago
- Views:
Transcription
1 Data consistency in 3D (It s the invariants, stupid) Marc Shapiro Masoud Saieda Ardekani Gustavo Petri This talk is about Understanding consistency Primitive consistency mechanisms How primitives compose models How models relate / differ What they cost Understanding invariants Some interesting classes of invariants Relating consistency to invariants Which primitives guarantee which invariants Useful intuitions for app. and system designers 2 Shared database q: Queue c: Counter { q c } c.inc() Geo-replicated database q: Queue c: Counter { q c } 5 ms q: Queue c: Counter { q c } c.inc() q.push(e) c.inc() Social, web, e-commerce: shared mutable data Scalability replication consistency issues q.val() c.val() 3 q.push(e) c.inc() Social, web, e-commerce: shared mutable data Scalability replication consistency issues q.val() c.val() q: Queue c: Counter { q c } q3 Queue? q1 = q2? q1 c4? 4
2 Consistency More replicas: Better read availability, responsiveness, performance, etc. More work to keep replicas in sync Consistent = behavior similar to sequential: Satisfies specs: does q behave like a queue? Replicas agree: is q identical everywhere? Objects agree: is q c? Same flow of time? q1.push() before q2.push() Consistency opportunities and costs Availability Parallelism keeps the hardware busy More implem. options, scalable But consistency constrains order of events: Delay delivery Stale reads Waits, synchronisation (mutual wait) Keeping track of order requires metadata Significant! 5 6 Costs illustrated 90% Read-only transactions; Disaster Tolerant Strict Serialisability Termination Latency of Update Transactions (ms) 70% Read-only transactions; Disaster Tolerant T1 client T1 R1 T2 T3 3 R2 R3 T1 T2 T3 Serrano-SI P-Store-SER GMU-US Jessy2pc-NMSI RC Walter-PSI SDUR-SER 4.5 Invariant Invariant Invariant Credit: Masoud Saeida Ardekani 7 8
3 Eventual consistency Strong vs. weak? Predictable Strict Serialisability Low performance Op1 R1 R2 R3 Op2 Snapshot Isolation PRAM Hard to program Eventual Consistency High performance 9 10 Strong vs. weak? Strong vs. weak? Predictable Strict Serialisability Low performance Strict Serializability (PL-SS) Full Serializability (PL-3) Fork Timed serial &,Γ-atomicity Sequential Prefix linearizable Linearizability Regular Eventual linearizability Snapshot Isolation Serialisability Snapshot Isolation (PL-SI) Update Serializability (PL-3U) Forward Consistent View (PL-FCV) Weak fork-lin. Bounded fork-join causal Fork sequential Fork* Causal+ Real-time causal Timed causal Causal models Causal Prefix sequential Safe Per-object models Processor Per-key Per-record sequential timeline & Coherence Synchronized models Weak ordering Release Lazy release Staleness-based models k-atomicity Bounded staleness & Delta k-regular Strong eventual Eventual serializabilit PRAM Monotonic Snapshot Reads (PL-MSR) Repeatable Read (PL-2.99) Cursor Stability (PL-CS) Consistent View (PL-2+) Monotonic View (PL-2L) Fork-join causal Fork-based models Writes-follow-reads Read-your-writes (WFR) (RYW) Session models Per-object causal PRAM (FIFO) Monotonic Writes Monotonic Reads (MW) (MR) Slow memory Scope Entry Location PBS t-visibility PBS k-staleness k-safe Eventual Quiescent PL-2 Weak Hard to program Eventual Consistency High performance PL-1 Transactional Adya 1999 Non-transactional Viotti & Vukolić
4 Three classes of invariant of protocol Gen1 Object value Total order of Mostly orthogonal (but not all combinations make sense.) Gen1 / Total Order Serialisability Strict Serialisability Linearisability PO EQ Relative ordering of State equivalence Visibility Composition 13 EQ / Composition Snapshot Isolation Eventual Consistency Txnl CC 14 Causal Operation Sequential correctness x=4 y= 2 x+y 0 x+y>0 x:=3 x+y>0 y 3 x+y>0 skip x=4 y= 2 x=3 y= 2 x=4 true y= 2 x+y 0 x:=3 y 3 skip generator: read, compute, generate effector effector: compute, write side-effect Sequential execution: precondition invariant each effector individually safe generator: read, compute, generate effector effector: compute, write side-effect Sequential execution: precondition invariant each effector individually safe 15 16
5 Guarantee vs. semantics Data types Guarantee: Class of invariants that is always true Regardless of application code Assuming sequentially correct Application can compensate for absence of guarantee e.g. Inv={ c 0 }, app: c.inc() Register Update: assign with constant Not commutative Absorbing High-level types Counter, ORset, Sequence: commute Stock, Account, Queue: commute Composed data + structural invariants Replicated operation client origin replica replica replica u? u upre upre upre u: state (retval, (state state)) Read one, write all (ROWA) Deferred-update replication (DUR) u! v? v! u! u! Sharded, geo-replicated arbitrary origin DC1 DC2 x1 y1 z1 x2 y2 z2 x=1 y =1 x1>0 z2%2=0 x1:=0 y2+=1 y1+=1 concurrent updates DC3 x2:=0 x=0 y=0 read my writes sharded, parallel 19 20
6 Type EQ invariants A = B x.friendof (y) y.friendof (x) x + y = constant South Boat North = { sheep, dog, wolf } Joint update to two objects Atomicity (all-or-nothing) property of transactions Protocol: single update message Asynchronous EQ: transactional composition Airplane reservation Allocate a seat to me Pay for the flight Two EQ relations: paid = have_seat my $$ + airline $$ = constant Ad-hoc grouping (This txn also needs TO ) EQ/Composition axis EQ/Composition axis Transaction groups : Deliver indivisibly packaged together + same TOE 2-phase commit Snapshot reads: all generators read from same set of maintain versions + same TO, VIS guarantees coordination Linearisability PRAM RC Serialisability Snapshot Isolation Trans. Causal Transaction groups : Deliver indivisibly packaged together + same TOE 2-phase commit Snapshot reads: all generators read from same set of maintain versions + same TO, VIS guarantees coordination 23 24
7 EQ/Composition axis Type PO invariants Linearisability PRAM RC Serialisability Snapshot Isolation Trans. Causal Transaction groups : Deliver indivisibly packaged together + same TOE 2-phase commit Snapshot reads: all generators read from same set of maintain versions + same TO, VIS guarantees coordination employee.manager.salary employee.salary S1; S2; S3 S1 S2 S3 dog S sheep S wolf S Referential integrity inode references disk block ACL (u, p) access (u, p) Demarcation Protocol: 1. increase LHS by c 2. increase RHS by c' c ordered delivery No synchronisation: Available PO: transitive / causal visibility x = 100; y = 100 Inv = { x y } Ex 1: P1: x += 100 P2: if x > y then y += (x y)/2 P3: x y? Transitive visibility vis* vis Ex 2: P1: x += 100; d 100 P2: if d > 0 then y += d/2 P3: x y? Causal visibility (vis; po)* vis 25 PO: transitive / causal visibility x = 100; y = 100 Inv = { x y } Ex 1: P1: x += 100 P2: if x > y then y += (x y)/2 P3: x y? Transitive visibility vis* vis Ex 2: P1: x += 100; d 100 P2: if d > 0 then y += d/2 P3: x y? Causal visibility (vis; po)* vis d! d! 26 client is part of DB 27 28
8 PO/Visibility axis Visibility Which writes visible to reads Transitive closure property Metadata System-wide Sender not delayed writes available Stale data reads available Read My Writes Monotonic Reads Often assumed Buffer 29 Eventual Consistency Not reasonable 30 Transitive, causal vis. Effector: metadata identifies set of predecessor Delay delivery after predecessors Read stale data Graph: unbounded Vector clock: entries 8 bytes! client is Approximate VC: stronger order x part of DB d d! 31 y Total/external causal Total order extends causal order Metadata: 1 single scalar but cost of total order : real-time clock SER NMSI PSI Gentle Rain Linearisable SSER 32
9 Gen1 invariants Gen1: total order Inv = 0 x u! = x x 1 { Inv 1 x} u! { Inv } Predict that Inv will be true after u!: Sequential: weakest precondition Generalises to bounded concurrency Unbounded concurrency: no sufficient precondition Invariant is not stable Limit concurrency: escrow No concurrency: order updates Gen1 Do replicas observe events in the same order? Pick a unique number = unordered Capricious TO Do replicas observe events in the same order? Pick a unique number Do replicas observe events in the same order? Pick a unique number 7 10 No: concurrent Commute converge Stable precondition Invariant 35 Lamport LWW EC Pick a number locally: Gap: will arrive later? Non-monotonic: rollback Monotonic Wait for gap to fill (Lamport 78) Lost updates (LWW) 36
10 Capricious TO Lamport LWW EC Do replicas observe events in the same order? Pick a unique number 10 Pick a number locally: Gap: will arrive later? Non-monotonic: rollback Monotonic Wait for gap to fill (Lamport 78) Lost updates (LWW) 37 7 SMR PSI NMSI Do replicas observe events in the same order? Pick a unique number Gapless: No lost updates Consensus, 2PC to uniquely allocate next free number not available TO generators LIN SER SSER SI Do replicas observe events in the same order? Pick a unique number TO + TO generators separate from same order as 39 40
11 Lin EC Lin Lin SSER SER SSER 43 44
12 Lin Lin SER SSER SER SSER PSI SI PSI Txnl CC 47 Total Order TOG=TOE E Capricious TOE Concurrent Ops Composition Visibility Rollbacks Monotonic Transitive Causal All-or-Nothing + Snapshot SER SSER All-or-Nothing E ectors Single Operation SC LIN All-or-Nothing + Snapshot NMSI PSI SSI All-or-Nothing E ectors Single Operation All-or-Nothing + Snapshot Bayou ÿ All-or-Nothing E ectors ÿ Single Operation LWW ÿ All-or-Nothing + Snapshot Causal HAT ÿ All-or-Nothing E ectors RC ÿ Single Operation EC PRAM CC ÿ 48
13 Summary Distributed, replicated data Improves read availability Parallel updates may violate invariants Guarantee: invariants maintained by system System vs. application cost trade-off Tools needed 3D consistency design space Total order (, generators) Visibility order Transactional Composition Work in progress 49 Creative Commons Attribution-ShareAlike 4.0 Intl. License You are free to: Share copy and redistribute the material in any medium or format Adapt remix, transform, and build upon the material for any purpose, even commercially, under the following terms: Attribution You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use. ShareAlike If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original. 4 session guarantees causal Monotonic reads r2 r3 w1 Read My Writes r2 50 Client / No rollback: r3 must include w1 Client / RMW: r2 must include w1 w1 Monotonic writes w2 Writes Follow Reads r2 w3 w2! w3! w2! w3! Global / No rollback: r3 must include w1 Global / WR dependence: w3 must follow w1 52
(It s the invariants, stupid)
Consistency in three dimensions (It s the invariants, stupid) Marc Shapiro Cloud to the edge Social, web, e-commerce: shared mutable data Scalability replication consistency issues Inria & Sorbonne-Universités
More informationJust-Right Consistency. Centralised data store. trois bases. As available as possible As consistent as necessary Correct by design
Just-Right Consistency As available as possible As consistent as necessary Correct by design Marc Shapiro, UMC-LI6 & Inria Annette Bieniusa, U. Kaiserslautern Nuno reguiça, U. Nova Lisboa Christopher Meiklejohn,
More informationStrong Eventual Consistency and CRDTs
Strong Eventual Consistency and CRDTs Marc Shapiro, INRIA & LIP6 Nuno Preguiça, U. Nova de Lisboa Carlos Baquero, U. Minho Marek Zawirski, INRIA & UPMC Large-scale replicated data structures Large, dynamic
More informationEventual Consistency Today: Limitations, Extensions and Beyond
Eventual Consistency Today: Limitations, Extensions and Beyond Peter Bailis and Ali Ghodsi, UC Berkeley - Nomchin Banga Outline Eventual Consistency: History and Concepts How eventual is eventual consistency?
More informationStrong Eventual Consistency and CRDTs
Strong Eventual Consistency and CRDTs Marc Shapiro, INRIA & LIP6 Nuno Preguiça, U. Nova de Lisboa Carlos Baquero, U. Minho Marek Zawirski, INRIA & UPMC Large-scale replicated data structures Large, dynamic
More informationSynchronization. Chapter 5
Synchronization Chapter 5 Clock Synchronization In a centralized system time is unambiguous. (each computer has its own clock) In a distributed system achieving agreement on time is not trivial. (it is
More informationA Framework for Transactional Consistency Models with Atomic Visibility
A Framework for Transactional Consistency Models with Atomic Visibility Andrea Cerone, Giovanni Bernardi, Alexey Gotsman IMDEA Software Institute, Madrid, Spain CONCUR - Madrid, September 1st 2015 Data
More informationLarge-Scale Key-Value Stores Eventual Consistency Marco Serafini
Large-Scale Key-Value Stores Eventual Consistency Marco Serafini COMPSCI 590S Lecture 13 Goals of Key-Value Stores Export simple API put(key, value) get(key) Simpler and faster than a DBMS Less complexity,
More informationEventual Consistency Today: Limitations, Extensions and Beyond
Eventual Consistency Today: Limitations, Extensions and Beyond Peter Bailis and Ali Ghodsi, UC Berkeley Presenter: Yifei Teng Part of slides are cited from Nomchin Banga Road Map Eventual Consistency:
More informationImportant Lessons. A Distributed Algorithm (2) Today's Lecture - Replication
Important Lessons Lamport & vector clocks both give a logical timestamps Total ordering vs. causal ordering Other issues in coordinating node activities Exclusive access to resources/data Choosing a single
More informationPNUTS and Weighted Voting. Vijay Chidambaram CS 380 D (Feb 8)
PNUTS and Weighted Voting Vijay Chidambaram CS 380 D (Feb 8) PNUTS Distributed database built by Yahoo Paper describes a production system Goals: Scalability Low latency, predictable latency Must handle
More information殷亚凤. Consistency and Replication. Distributed Systems [7]
Consistency and Replication Distributed Systems [7] 殷亚凤 Email: yafeng@nju.edu.cn Homepage: http://cs.nju.edu.cn/yafeng/ Room 301, Building of Computer Science and Technology Review Clock synchronization
More informationReplication and Consistency. Fall 2010 Jussi Kangasharju
Replication and Consistency Fall 2010 Jussi Kangasharju Chapter Outline Replication Consistency models Distribution protocols Consistency protocols 2 Data Replication user B user C user A object object
More informationConflict-free Replicated Data Types (CRDTs)
Conflict-free Replicated Data Types (CRDTs) for collaborative environments Marc Shapiro, INRIA & LIP6 Nuno Preguiça, U. Nova de Lisboa Carlos Baquero, U. Minho Marek Zawirski, INRIA & UPMC Conflict-free
More informationEECS 498 Introduction to Distributed Systems
EECS 498 Introduction to Distributed Systems Fall 2017 Harsha V. Madhyastha Replicated State Machines Logical clocks Primary/ Backup Paxos? 0 1 (N-1)/2 No. of tolerable failures October 11, 2017 EECS 498
More informationMutual consistency, what for? Replication. Data replication, consistency models & protocols. Difficulties. Execution Model.
Replication Data replication, consistency models & protocols C. L. Roncancio - S. Drapeau Grenoble INP Ensimag / LIG - Obeo 1 Data and process Focus on data: several physical of one logical object What
More informationCSE 5306 Distributed Systems. Consistency and Replication
CSE 5306 Distributed Systems Consistency and Replication 1 Reasons for Replication Data are replicated for the reliability of the system Servers are replicated for performance Scaling in numbers Scaling
More informationCS6450: Distributed Systems Lecture 11. Ryan Stutsman
Strong Consistency CS6450: Distributed Systems Lecture 11 Ryan Stutsman Material taken/derived from Princeton COS-418 materials created by Michael Freedman and Kyle Jamieson at Princeton University. Licensed
More informationReplication and Consistency
Replication and Consistency Today l Replication l Consistency models l Consistency protocols The value of replication For reliability and availability Avoid problems with disconnection, data corruption,
More informationAnalyzing Snapshot Isolation
Analyzing Snapshot Isolation Andrea Cerone Alexey Gotsman IMDEA Software Institute PODC 2016 presented by Dima Kuznetsov Andrea Cerone, Alexey Gotsman (IMDEA) Analyzing Snapshot Isolation PODC 2016 1 /
More informationCS6450: Distributed Systems Lecture 13. Ryan Stutsman
Eventual Consistency CS6450: Distributed Systems Lecture 13 Ryan Stutsman Material taken/derived from Princeton COS-418 materials created by Michael Freedman and Kyle Jamieson at Princeton University.
More informationSelf-healing Data Step by Step
Self-healing Data Step by Step Uwe Friedrichsen (codecentric AG) NoSQL matters Cologne, 29. April 2014 @ufried Uwe Friedrichsen uwe.friedrichsen@codecentric.de http://slideshare.net/ufried http://ufried.tumblr.com
More informationDistributed Systems. Lec 12: Consistency Models Sequential, Causal, and Eventual Consistency. Slide acks: Jinyang Li
Distributed Systems Lec 12: Consistency Models Sequential, Causal, and Eventual Consistency Slide acks: Jinyang Li (http://www.news.cs.nyu.edu/~jinyang/fa10/notes/ds-eventual.ppt) 1 Consistency (Reminder)
More informationParallel and Distributed Systems. Programming Models. Why Parallel or Distributed Computing? What is a parallel computer?
Parallel and Distributed Systems Instructor: Sandhya Dwarkadas Department of Computer Science University of Rochester What is a parallel computer? A collection of processing elements that communicate and
More informationChapter 4: Distributed Systems: Replication and Consistency. Fall 2013 Jussi Kangasharju
Chapter 4: Distributed Systems: Replication and Consistency Fall 2013 Jussi Kangasharju Chapter Outline n Replication n Consistency models n Distribution protocols n Consistency protocols 2 Data Replication
More informationBuilding Consistent Transactions with Inconsistent Replication
DB Reading Group Fall 2015 slides by Dana Van Aken Building Consistent Transactions with Inconsistent Replication Irene Zhang, Naveen Kr. Sharma, Adriana Szekeres, Arvind Krishnamurthy, Dan R. K. Ports
More informationDISTRIBUTED COMPUTER SYSTEMS
DISTRIBUTED COMPUTER SYSTEMS CONSISTENCY AND REPLICATION CONSISTENCY MODELS Dr. Jack Lange Computer Science Department University of Pittsburgh Fall 2015 Consistency Models Background Replication Motivation
More informationDistributed Systems. Catch-up Lecture: Consistency Model Implementations
Distributed Systems Catch-up Lecture: Consistency Model Implementations Slides redundant with Lec 11,12 Slide acks: Jinyang Li, Robert Morris, Dave Andersen 1 Outline Last times: Consistency models Strict
More informationMemory Consistency. Minsoo Ryu. Department of Computer Science and Engineering. Hanyang University. Real-Time Computing and Communications Lab.
Memory Consistency Minsoo Ryu Department of Computer Science and Engineering 2 Distributed Shared Memory Two types of memory organization in parallel and distributed systems Shared memory (shared address
More informationAvailability versus consistency. Eventual Consistency: Bayou. Eventual consistency. Bayou: A Weakly Connected Replicated Storage System
Eventual Consistency: Bayou Availability versus consistency Totally-Ordered Multicast kept replicas consistent but had single points of failure Not available under failures COS 418: Distributed Systems
More informationHow Eventual is Eventual Consistency?
Probabilistically Bounded Staleness How Eventual is Eventual Consistency? Peter Bailis, Shivaram Venkataraman, Michael J. Franklin, Joseph M. Hellerstein, Ion Stoica (UC Berkeley) BashoChats 002, 28 February
More informationConsistency and Replication. Why replicate?
Consistency and Replication Today: Consistency models Data-centric consistency models Client-centric consistency models Lecture 15, page 1 Why replicate? Data replication versus compute replication Data
More informationConsistency in Distributed Systems
Consistency in Distributed Systems Recall the fundamental DS properties DS may be large in scale and widely distributed 1. concurrent execution of components 2. independent failure modes 3. transmission
More informationSynchronization Part 2. REK s adaptation of Claypool s adaptation oftanenbaum s Distributed Systems Chapter 5 and Silberschatz Chapter 17
Synchronization Part 2 REK s adaptation of Claypool s adaptation oftanenbaum s Distributed Systems Chapter 5 and Silberschatz Chapter 17 1 Outline Part 2! Clock Synchronization! Clock Synchronization Algorithms!
More informationCloud-backed applications. Write Fast, Read in the Past: Causal Consistency for Client- Side Applications. Requirements & challenges
Write Fast, Read in the Past: ausal onsistenc for lient- Side Applications loud-backed applications 1. Request 3. Repl 2. Process request & store update 4. Transmit update 50~200ms databas e app server
More informationMDCC MULTI DATA CENTER CONSISTENCY. amplab. Tim Kraska, Gene Pang, Michael Franklin, Samuel Madden, Alan Fekete
MDCC MULTI DATA CENTER CONSISTENCY Tim Kraska, Gene Pang, Michael Franklin, Samuel Madden, Alan Fekete gpang@cs.berkeley.edu amplab MOTIVATION 2 3 June 2, 200: Rackspace power outage of approximately 0
More informationDistributed Systems. Characteristics of Distributed Systems. Lecture Notes 1 Basic Concepts. Operating Systems. Anand Tripathi
1 Lecture Notes 1 Basic Concepts Anand Tripathi CSci 8980 Operating Systems Anand Tripathi CSci 8980 1 Distributed Systems A set of computers (hosts or nodes) connected through a communication network.
More informationDistributed Systems. Characteristics of Distributed Systems. Characteristics of Distributed Systems. Goals in Distributed System Designs
1 Anand Tripathi CSci 8980 Operating Systems Lecture Notes 1 Basic Concepts Distributed Systems A set of computers (hosts or nodes) connected through a communication network. Nodes may have different speeds
More informationCausal Consistency and Two-Phase Commit
Causal Consistency and Two-Phase Commit CS 240: Computing Systems and Concurrency Lecture 16 Marco Canini Credits: Michael Freedman and Kyle Jamieson developed much of the original material. Consistency
More informationCausal Consistency. CS 240: Computing Systems and Concurrency Lecture 16. Marco Canini
Causal Consistency CS 240: Computing Systems and Concurrency Lecture 16 Marco Canini Credits: Michael Freedman and Kyle Jamieson developed much of the original material. Consistency models Linearizability
More informationIntroduction to Distributed Systems Seif Haridi
Introduction to Distributed Systems Seif Haridi haridi@kth.se What is a distributed system? A set of nodes, connected by a network, which appear to its users as a single coherent system p1 p2. pn send
More informationData-Centric Consistency Models. The general organization of a logical data store, physically distributed and replicated across multiple processes.
Data-Centric Consistency Models The general organization of a logical data store, physically distributed and replicated across multiple processes. Consistency models The scenario we will be studying: Some
More informationMaking Consistency More Consistent: A Unified Model for Coherence, Consistency and Isolation
Making Consistency More Consistent: A Unified Model for Coherence, Consistency and Isolation ABSTRACT Adriana Szekeres University of Washington aaasz@cs.washington.edu Ordering guarantees are often defined
More informationINF-5360 Presentation
INF-5360 Presentation Optimistic Replication Ali Ahmad April 29, 2013 Structure of presentation Pessimistic and optimistic replication Elements of Optimistic replication Eventual consistency Scheduling
More informationComputing Parable. The Archery Teacher. Courtesy: S. Keshav, U. Waterloo. Computer Science. Lecture 16, page 1
Computing Parable The Archery Teacher Courtesy: S. Keshav, U. Waterloo Lecture 16, page 1 Consistency and Replication Today: Consistency models Data-centric consistency models Client-centric consistency
More informationBuilding Consistent Transactions with Inconsistent Replication
Building Consistent Transactions with Inconsistent Replication Irene Zhang, Naveen Kr. Sharma, Adriana Szekeres, Arvind Krishnamurthy, Dan R. K. Ports University of Washington Distributed storage systems
More informationMasoud SAEIDA ARDEKANI
THÈSE DE DOCTORAT DE l UNIVERSITÉ PIERRE ET MARIE CURIE Spécialité Informatique École doctorale Informatique, Télécommunications et Électronique (Paris) Présentée par Masoud SAEIDA ARDEKANI Pour obtenir
More informationSWIFTCLOUD: GEO-REPLICATION RIGHT TO THE EDGE
SWIFTCLOUD: GEO-REPLICATION RIGHT TO THE EDGE Annette Bieniusa T.U. Kaiserslautern Carlos Baquero HSALab, U. Minho Marc Shapiro, Marek Zawirski INRIA, LIP6 Nuno Preguiça, Sérgio Duarte, Valter Balegas
More informationCSE 5306 Distributed Systems
CSE 5306 Distributed Systems Consistency and Replication Jia Rao http://ranger.uta.edu/~jrao/ 1 Reasons for Replication Data is replicated for the reliability of the system Servers are replicated for performance
More informationConsistency and Replication
Consistency and Replication Introduction Data-centric consistency Client-centric consistency Distribution protocols Consistency protocols 1 Goal: Reliability Performance Problem: Consistency Replication
More informationG Bayou: A Weakly Connected Replicated Storage System. Robert Grimm New York University
G22.3250-001 Bayou: A Weakly Connected Replicated Storage System Robert Grimm New York University Altogether Now: The Three Questions! What is the problem?! What is new or different?! What are the contributions
More informationDistributed Systems. Day 13: Distributed Transaction. To Be or Not to Be Distributed.. Transactions
Distributed Systems Day 13: Distributed Transaction To Be or Not to Be Distributed.. Transactions Summary Background on Transactions ACID Semantics Distribute Transactions Terminology: Transaction manager,,
More informationReplication in Distributed Systems
Replication in Distributed Systems Replication Basics Multiple copies of data kept in different nodes A set of replicas holding copies of a data Nodes can be physically very close or distributed all over
More informationSynchronization. Clock Synchronization
Synchronization Clock Synchronization Logical clocks Global state Election algorithms Mutual exclusion Distributed transactions 1 Clock Synchronization Time is counted based on tick Time judged by query
More informationDatabase Replication: A Tutorial
Chapter 12 Database Replication: A Tutorial Bettina Kemme, Ricardo Jiménez-Peris, Marta Patiño-Martínez, and Gustavo Alonso Abstract This chapter provides an in-depth introduction to database replication,
More informationImportant Lessons. Today's Lecture. Two Views of Distributed Systems
Important Lessons Replication good for performance/ reliability Key challenge keeping replicas up-to-date Wide range of consistency models Will see more next lecture Range of correctness properties L-10
More informationDistributed Systems (5DV147)
Distributed Systems (5DV147) Replication and consistency Fall 2013 1 Replication 2 What is replication? Introduction Make different copies of data ensuring that all copies are identical Immutable data
More informationApplications of Paxos Algorithm
Applications of Paxos Algorithm Gurkan Solmaz COP 6938 - Cloud Computing - Fall 2012 Department of Electrical Engineering and Computer Science University of Central Florida - Orlando, FL Oct 15, 2012 1
More informationSynchronization Part II. CS403/534 Distributed Systems Erkay Savas Sabanci University
Synchronization Part II CS403/534 Distributed Systems Erkay Savas Sabanci University 1 Election Algorithms Issue: Many distributed algorithms require that one process act as a coordinator (initiator, etc).
More informationTime and distributed systems. Just use time stamps? Correct consistency model? Replication and Consistency
Correct consistency model? Replication and Consistency B COS 58: dvanced Computer Systems Lecture 3 Let s say and B send an op. ll readers see B? ll readers see B? Michael Freedman Some see B and others
More informationRecall use of logical clocks
Causal Consistency Consistency models Linearizability Causal Eventual COS 418: Distributed Systems Lecture 16 Sequential Michael Freedman 2 Recall use of logical clocks Lamport clocks: C(a) < C(z) Conclusion:
More informationGOSSIP ARCHITECTURE. Gary Berg css434
GOSSIP ARCHITECTURE Gary Berg css434 WE WILL SEE Architecture overview Consistency models How it works Availability and Recovery Performance and Scalability PRELIMINARIES Why replication? Fault tolerance
More informationDistributed Transaction Management 2003
Distributed Transaction Management 2003 Jyrki Nummenmaa http://www.cs.uta.fi/~dtm jyrki@cs.uta.fi General information We will view this from the course web page. Motivation We will pick up some motivating
More informationDistributed Systems. 09. State Machine Replication & Virtual Synchrony. Paul Krzyzanowski. Rutgers University. Fall Paul Krzyzanowski
Distributed Systems 09. State Machine Replication & Virtual Synchrony Paul Krzyzanowski Rutgers University Fall 2016 1 State machine replication 2 State machine replication We want high scalability and
More informationData Modeling and Databases Ch 14: Data Replication. Gustavo Alonso, Ce Zhang Systems Group Department of Computer Science ETH Zürich
Data Modeling and Databases Ch 14: Data Replication Gustavo Alonso, Ce Zhang Systems Group Department of Computer Science ETH Zürich Database Replication What is database replication The advantages of
More informationConsistency and Replication
Topics to be covered Introduction Consistency and Replication Consistency Models Distribution Protocols Consistency Protocols 1 2 + Performance + Reliability Introduction Introduction Availability: proportion
More informationDistributed Transactions
Distributed Transactions CS6450: Distributed Systems Lecture 17 Ryan Stutsman Material taken/derived from Princeton COS-418 materials created by Michael Freedman and Kyle Jamieson at Princeton University.
More informationAtomicity. Bailu Ding. Oct 18, Bailu Ding Atomicity Oct 18, / 38
Atomicity Bailu Ding Oct 18, 2012 Bailu Ding Atomicity Oct 18, 2012 1 / 38 Outline 1 Introduction 2 State Machine 3 Sinfonia 4 Dangers of Replication Bailu Ding Atomicity Oct 18, 2012 2 / 38 Introduction
More informationGenie. Distributed Systems Synthesis and Verification. Marc Rosen. EN : Advanced Distributed Systems and Networks May 1, 2017
Genie Distributed Systems Synthesis and Verification Marc Rosen EN.600.667: Advanced Distributed Systems and Networks May 1, 2017 1 / 35 Outline Introduction Problem Statement Prior Art Demo How does it
More informationCPS 512 midterm exam #1, 10/7/2016
CPS 512 midterm exam #1, 10/7/2016 Your name please: NetID: Answer all questions. Please attempt to confine your answers to the boxes provided. If you don t know the answer to a question, then just say
More informationTransaction Management using Causal Snapshot Isolation in Partially Replicated Databases. Technical Report
Transaction Management using Causal Snapshot Isolation in Partially Replicated Databases Technical Report Department of Computer Science and Engineering University of Minnesota 4-192 Keller Hall 200 Union
More informationConsistency & Replication
Objectives Consistency & Replication Instructor: Dr. Tongping Liu To understand replication and related issues in distributed systems" To learn about how to keep multiple replicas consistent with each
More informationDistributed systems. Lecture 6: distributed transactions, elections, consensus and replication. Malte Schwarzkopf
Distributed systems Lecture 6: distributed transactions, elections, consensus and replication Malte Schwarzkopf Last time Saw how we can build ordered multicast Messages between processes in a group Need
More informationLast time. Distributed systems Lecture 6: Elections, distributed transactions, and replication. DrRobert N. M. Watson
Distributed systems Lecture 6: Elections, distributed transactions, and replication DrRobert N. M. Watson 1 Last time Saw how we can build ordered multicast Messages between processes in a group Need to
More informationWhy distributed databases suck, and what to do about it. Do you want a database that goes down or one that serves wrong data?"
Why distributed databases suck, and what to do about it - Regaining consistency Do you want a database that goes down or one that serves wrong data?" 1 About the speaker NoSQL team lead at Trifork, Aarhus,
More informationConsumer-view of consistency properties: definition, measurement, and exploitation
Consumer-view of consistency properties: definition, measurement, and exploitation Alan Fekete (University of Sydney) Alan.Fekete@sydney.edu.au PaPoC, London, April 2016 Limitations of this talk Discuss
More informationReplication of Data. Data-Centric Consistency Models. Reliability vs. Availability
CIS 505: Software Systems Lecture Note on Consistency and Replication Instructor: Insup Lee Department of Computer and Information Science University of Pennsylvania CIS 505, Spring 2007 Replication of
More informationTransactions. 1. Transactions. Goals for this lecture. Today s Lecture
Goals for this lecture Transactions Transactions are a programming abstraction that enables the DBMS to handle recovery and concurrency for users. Application: Transactions are critical for users Even
More informationModule 7 - Replication
Module 7 - Replication Replication Why replicate? Reliability Avoid single points of failure Performance Scalability in numbers and geographic area Why not replicate? Replication transparency Consistency
More informationDon t Give Up on Serializability Just Yet. Neha Narula
Don t Give Up on Serializability Just Yet Neha Narula Don t Give Up on Serializability Just Yet A journey into serializable systems Neha Narula MIT CSAIL GOTO Chicago May 2015 2 @neha PhD candidate at
More informationDistributed Algorithms Reliable Broadcast
Distributed Algorithms Reliable Broadcast Alberto Montresor University of Trento, Italy 2016/04/26 This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. Contents
More informationLecture 6: Logical Time
Lecture 6: Logical Time 1. Question from reviews a. 2. Key problem: how do you keep track of the order of events. a. Examples: did a file get deleted before or after I ran that program? b. Did this computers
More informationTransaction Management & Concurrency Control. CS 377: Database Systems
Transaction Management & Concurrency Control CS 377: Database Systems Review: Database Properties Scalability Concurrency Data storage, indexing & query optimization Today & next class Persistency Security
More informationConsistency in Distributed Storage Systems. Mihir Nanavati March 4 th, 2016
Consistency in Distributed Storage Systems Mihir Nanavati March 4 th, 2016 Today Overview of distributed storage systems CAP Theorem About Me Virtualization/Containers, CPU microarchitectures/caches, Network
More informationTransaction Management using Causal Snapshot Isolation in Partially Replicated Databases
Transaction Management using Causal Snapshot Isolation in Partially Replicated Databases ABSTRACT We present here a transaction management protocol using snapshot isolation in partially replicated multi-version
More informationTARDiS: A branch and merge approach to weak consistency
TARDiS: A branch and merge approach to weak consistency By: Natacha Crooks, Youer Pu, Nancy Estrada, Trinabh Gupta, Lorenzo Alvis, Allen Clement Presented by: Samodya Abeysiriwardane TARDiS Transactional
More informationMegastore: Providing Scalable, Highly Available Storage for Interactive Services & Spanner: Google s Globally- Distributed Database.
Megastore: Providing Scalable, Highly Available Storage for Interactive Services & Spanner: Google s Globally- Distributed Database. Presented by Kewei Li The Problem db nosql complex legacy tuning expensive
More informationConcurrency Control II and Distributed Transactions
Concurrency Control II and Distributed Transactions CS 240: Computing Systems and Concurrency Lecture 18 Marco Canini Credits: Michael Freedman and Kyle Jamieson developed much of the original material.
More informationConsistency Rationing in the Cloud: Pay only when it matters
Consistency Rationing in the Cloud: Pay only when it matters By Sandeepkrishnan Some of the slides in this presenta4on have been taken from h7p://www.cse.iitb.ac.in./dbms/cs632/ra4oning.ppt 1 Introduc4on:
More informationClock Synchronization. Synchronization. Clock Synchronization Algorithms. Physical Clock Synchronization. Tanenbaum Chapter 6 plus additional papers
Clock Synchronization Synchronization Tanenbaum Chapter 6 plus additional papers Fig 6-1. In a distributed system, each machine has its own clock. When this is the case, an event that occurred after another
More informationJune Gerd Liefländer System Architecture Group Universität Karlsruhe, System Architecture Group
Distributed Systems 14 Consistency June-29-2009 Gerd Liefländer System Architecture Group 2009 Universität Karlsruhe, System Architecture Group 1 Overview Outline Motivation & Introduction Consistency
More informationCSE 5306 Distributed Systems
CSE 5306 Distributed Systems Fault Tolerance Jia Rao http://ranger.uta.edu/~jrao/ 1 Failure in Distributed Systems Partial failure Happens when one component of a distributed system fails Often leaves
More informationEvent Ordering. Greg Bilodeau CS 5204 November 3, 2009
Greg Bilodeau CS 5204 November 3, 2009 Fault Tolerance How do we prepare for rollback and recovery in a distributed system? How do we ensure the proper processing order of communications between distributed
More information10. Replication. Motivation
10. Replication Page 1 10. Replication Motivation Reliable and high-performance computation on a single instance of a data object is prone to failure. Replicate data to overcome single points of failure
More informationPerformance and Forgiveness. June 23, 2008 Margo Seltzer Harvard University School of Engineering and Applied Sciences
Performance and Forgiveness June 23, 2008 Margo Seltzer Harvard University School of Engineering and Applied Sciences Margo Seltzer Architect Outline A consistency primer Techniques and costs of consistency
More informationThe Timed Asynchronous Distributed System Model By Flaviu Cristian and Christof Fetzer
The Timed Asynchronous Distributed System Model By Flaviu Cristian and Christof Fetzer - proposes a formal definition for the timed asynchronous distributed system model - presents measurements of process
More informationLectures 8 & 9. Lectures 7 & 8: Transactions
Lectures 8 & 9 Lectures 7 & 8: Transactions Lectures 7 & 8 Goals for this pair of lectures Transactions are a programming abstraction that enables the DBMS to handle recoveryand concurrency for users.
More informationFault Tolerance. Goals: transparent: mask (i.e., completely recover from) all failures, or predictable: exhibit a well defined failure behavior
Fault Tolerance Causes of failure: process failure machine failure network failure Goals: transparent: mask (i.e., completely recover from) all failures, or predictable: exhibit a well defined failure
More informationToday CSCI Data Replication. Example: Distributed Shared Memory. Data Replication. Data Consistency. Instructor: Abhishek Chandra
Today CSCI 5105 Data Replication Examples and Issues Data Consistency Consistency Models Instructor: Abhishek Chandra 2 Data Replication Using multiple copies of same data Why do we need data replication?
More informationCSC 261/461 Database Systems Lecture 21 and 22. Spring 2017 MW 3:25 pm 4:40 pm January 18 May 3 Dewey 1101
CSC 261/461 Database Systems Lecture 21 and 22 Spring 2017 MW 3:25 pm 4:40 pm January 18 May 3 Dewey 1101 Announcements Project 3 (MongoDB): Due on: 04/12 Work on Term Project and Project 1 The last (mini)
More information