Outline The Case for Non-transparent Replication: Examples from Bayou Douglas B. Terry, Karin Petersen, Mike J. Spreitzer, and Marvin M. Theimer. IEEE.

Slides:



Advertisements
Similar presentations
Provenance-Aware Storage Systems Margo Seltzer April 29, 2005.
Advertisements

My first computer: The Apple ][ It wanted to be programmed.
Eventual Consistency Jinyang. Sequential consistency Sequential consistency properties: –Latest read must see latest write Handles caching –All writes.
Replication. Topics r Why Replication? r System Model r Consistency Models r One approach to consistency management and dealing with failures.
“What do you want me to do now?”
Replication and Consistency (2). Reference r Replication in the Harp File System, Barbara Liskov, Sanjay Ghemawat, Robert Gruber, Paul Johnson, Liuba.
Feb 7, 2001CSCI {4,6}900: Ubiquitous Computing1 Announcements.
Distributed Databases John Ortiz. Lecture 24Distributed Databases2  Distributed Database (DDB) is a collection of interrelated databases interconnected.
Lecture 2 Page 1 CS 236, Spring 2008 Security Principles and Policies CS 236 On-Line MS Program Networks and Systems Security Peter Reiher Spring, 2008.
“Managing Update Conflicts in Bayou, a Weekly Connected Replicated Storage System” Presented by - RAKESH.K.
G Robert Grimm New York University Disconnected Operation in the Coda File System.
Databases. Database Information is not useful if not organized In database, data are organized in a way that people find meaningful and useful. Database.
Flexible Update Propagation for Weakly Consistent Replication Karin Petersen, Mike K. Spreitzer, Douglas B. Terry, Marvin M. Theimer and Alan J. Demers.
Mutual Consistency Detection of mutual inconsistency in distributed systems (Parker, Popek, et. al.) Distributed system with replication for reliability.
G Robert Grimm New York University Bayou: A Weakly Connected Replicated Storage System.
Managing Update Conflicts in Bayou, a Weakly Connected Replicated Storage System D. B. Terry, M. M. Theimer, K. Petersen, A. J. Demers, M. J. Spreitzer.
Mobility Presented by: Mohamed Elhawary. Mobility Distributed file systems increase availability Remote failures may cause serious troubles Server replication.
Distributed Databases
Hands-On Microsoft Windows Server 2008 Chapter 8 Managing Windows Server 2008 Network Services.
Distributed Deadlocks and Transaction Recovery.
Microsoft ® Office Outlook ® 2007 Training See and Use Multiple Calendars ICT Staff Development presents:
Mobility in Distributed Computing With Special Emphasis on Data Mobility.
Replication and Consistency. References r The Case for Non-transparent Replication: Examples from Bayou Douglas B. Terry, Karin Petersen, Mike J. Spreitzer,
Distributed Systems and Security: An Introduction Brad Karp UCL Computer Science CS GZ03 / st October, 2007.
Feb 7, 2001CSCI {4,6}900: Ubiquitous Computing1 Announcements.
CS Storage Systems Lecture 14 Consistency and Availability Tradeoffs.
Feb 7, 2001CSCI {4,6}900: Ubiquitous Computing1 Announcements Tomorrow’s class is officially cancelled. If you need someone to go over the reference implementation.
Windows 2000 Active Directory Service COSC 513 Yongquan Cai 03/10/2001.
Bayou. References r The Case for Non-transparent Replication: Examples from Bayou Douglas B. Terry, Karin Petersen, Mike J. Spreitzer, and Marvin M. Theimer.
Replication and Consistency. Reference The Dangers of Replication and a Solution, Jim Gray, Pat Helland, Patrick O'Neil, and Dennis Shasha. In Proceedings.
What is a Computer? Computer generally means a programmable machine. The two principal characteristics of a computer are: it responds to a specific set.
Replication March 16, Replication What is Replication?  A technique for increasing availability, fault tolerance and sometimes, performance 
Database Systems: Design, Implementation, and Management Tenth Edition Chapter 12 Distributed Database Management Systems.
Distributed File Systems Overview  A file system is an abstract data type – an abstraction of a storage device.  A distributed file system is available.
High Impact Technology February It’s Awesome!
Client/Server Model: A Business View The different Client/server implementations differ according to: 1.Where the processing for the presentation of information.
Feb 1, 2001CSCI {4,6}900: Ubiquitous Computing1 Eager Replication and mobile nodes Read on disconnected clients may give stale data Eager replication prohibits.
Networks Am I hooked up?. Networks definition sizes of networks types advantages and disadvantages how data is sent transmission media business uses.
Replication (1). Topics r Why Replication? r System Model r Consistency Models r One approach to consistency management and dealing with failures.
Write Conflicts in Optimistic Replication Problem: replicas may accept conflicting writes. How to detect/resolve the conflicts? client B client A replica.
1 Intro stored procedures Declaring parameters Using in a sproc Intro to transactions Concurrency control & recovery States of transactions Desirable.
Bayou: Replication with Weak Inter-Node Connectivity Brad Karp UCL Computer Science CS GZ03 / th November, 2007.
Eventual Consistency Jinyang. Review: Sequential consistency Sequential consistency properties: –All read/write ops follow some total ordering –Read must.
Distributed Systems and Security: An Introduction Brad Karp and Steve Hailes UCL Computer Science CS Z03 / nd October, 2006.
Highly Available Services and Transactions with Replicated Data Jason Lenthe.
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.
CSE 486/586 Distributed Systems Case Study: Amazon Dynamo
Chapter 9 Database Systems
Chapter 25: Advanced Data Types and New Applications
What is a Computer? Computer generally means a programmable machine. The two principal characteristics of a computer are: it responds to a specific set.
6.4 Data and File Replication
Chapter 19: Distributed Databases
What is a Computer? Computer generally means a programmable machine. The two principal characteristics of a computer are: it responds to a specific set.
CSE 486/586 Distributed Systems Consistency --- 3
EECS 498 Introduction to Distributed Systems Fall 2017
Administering Your Network
Fundamentals of Databases
Distributed File Systems
EEC 688/788 Secure and Dependable Computing
EEC 688/788 Secure and Dependable Computing
Eventual Consistency: Bayou
Replica Placement Model: We consider objects (and don’t worry whether they contain just data or code, or both) Distinguish different processes: A process.
OCR GCSE Computing © Hodder Education 2013 Slide 1
EEC 688/788 Secure and Dependable Computing
Content Distribution Network
CSE 486/586 Distributed Systems Consistency --- 3
Outline for today Oceanstore: An architecture for Global-Scale Persistent Storage – University of California, Berkeley. ASPLOS 2000 Feasibility of a Serverless.
Presentation transcript:

Outline The Case for Non-transparent Replication: Examples from Bayou Douglas B. Terry, Karin Petersen, Mike J. Spreitzer, and Marvin M. Theimer. IEEE Data Engineering, December 1998 24-Feb-19 Ubiquitous Computing

Transaction has to show up everywhere at the same time or not at all. ACID Transaction Transaction has to show up everywhere at the same time or not at all. E.g. when you withdraw cash from your ATM machine, the balance should reflect the actual money left. If it doesn’t, then you could go back to a store, use your ATM card and withdraw cash that you do not have E.g. when you make your Airline reservation and the system assigns you a seat, you expect the seat to be available to you (of course, Airlines overbook) E.g. When students register at OASIS, it has to register enough students (upto the class limit) 24-Feb-19 Ubiquitous Computing

Replication and Availability Replication is a powerful tool that allows us to tradeoff availability for consistency Applications need different levels of consistency Applications know best on how to deal with inconsistency 24-Feb-19 Ubiquitous Computing

Application 1: Meeting room scheduler Suppose we have two conference rooms of the same capacity. I want to schedule my meeting in one of the conference rooms. I don’t care which exact room it is. If two people reserve the same room at the same time, there is a conflict, but if they reserve the same room at different times or reserve different rooms at the same time, there is no conflict. Rm1 time Rm2 No conflict 24-Feb-19 Ubiquitous Computing

Application 1: Meeting room scheduler Suppose we have two conference rooms of the same capacity. I want to schedule my meeting in one of the conference rooms. I don’t care which exact room it is. If two people reserve the same room at the same time, there is a conflict, but if they reserve the same room at different times or reserve different rooms at the same time, there is no conflict. No conflict Rm1 time Rm2 24-Feb-19 Ubiquitous Computing

Application 1: Meeting room scheduler Suppose we have two conference rooms of the same capacity. I want to schedule my meeting in one of the conference rooms. I don’t care which exact room it is. If two people reserve the same room at the same time, there is a conflict, but if they reserve the same room at different times or reserve different rooms at the same time, there is no conflict. Rm2 Rm1 time conflict 24-Feb-19 Ubiquitous Computing

Application 1: Meeting room scheduler We can lock the entire database Not needed when there is no conflict In the case of conflicts, there is an application specific way to deal with the conflict – we move one reservation to the other room. No conflict Rm1 time Rm2 24-Feb-19 Ubiquitous Computing

Application 1: Meeting room scheduler We can lock the entire database Not needed when there is no conflict In the case of conflicts, there is an application specific way to deal with the conflict – we move on reservation to the other room If the other room is reserved, we ask the user, they can easily move the reservation to another acceptable time Rm1 time Rm2 No conflict 24-Feb-19 Ubiquitous Computing

Application 2: Shared mailbox UbiqComp Important Recruiting RedHat Shared mailbox folders- shared between, me, my TA, my secretary We all replicate the mailbox. OP1: I see a mail from the class, respond to it and delete it OP2: The TA sees the same mail and files it in UbiqComp OP3: I see a mail from my wife and file it in important 24-Feb-19 Ubiquitous Computing

Application 2: Shared mailbox All of us operate on the same mailbox You can lock the entire mailbox before we operate Can’t work when disconnected Clearly not necessary for operation OP1 or OP2 and OP3 For operation OP1 and OP2, it is no clear who should win, should the mail be deleted or should it be filed in UbiqComp? 24-Feb-19 Ubiquitous Computing

Two approaches to building replicated services Transparent replication system: Allow systems that were developed assuming a central file system or database to run unchanged on top of a strongly-consistent replicated storage system (e.g. Harp) Non-transparent replication system: Relaxed consistency model – access-update-anywhere Applications involved in conflict detection and resolution. Hence applications need to be modified (e.g. Bayou, Coda file system etc) 24-Feb-19 Ubiquitous Computing

Applications know best on how to resolve conflicts Hypothesis Applications know best on how to resolve conflicts Challenge is providing the right interface to support cooperation between applications and their data managers Programmers do not want to deal with propagating updates, ensuring eventual consistency Anyone who has synchronized the project files in school, work, and home can feel the pain.. Programmers want to set replication schedules and control how conflicts or detected and resolved Record level conflict detection rather than file level 24-Feb-19 Ubiquitous Computing

Update-anywhere replication model: Bayou Update-anywhere replication model: Bayou manages databases that can be fully replicated at any number of sites Applications can read and write to any single replica of the database (lazy group update) Once a replica accepts a write operation, this write is performed locally and propagated to all other replicas via pair-wise reconciliation protocol 24-Feb-19 Ubiquitous Computing

3-tuple: <update><dependency check><mergeproc> Bayou Write 3-tuple: <update><dependency check><mergeproc> For example, Update: <insert, Boyd527, 2/17/2002, 11:15am, 50min, “Ubiquitous Computing”> Dependency check: <Is there an entry in Boyd527 database on 2/17/2002 at 11:15am for 50 min? expected answer is empty> Mergeproc: <Try 2/17/2002 at 12:15pm for 50min; if successful write that tuple> sometimes users like conflicts 24-Feb-19 Ubiquitous Computing

Pair-wire reconciliation Replica Replica Replica Replica Eventual consistency Global commit order assigned by Primary server 24-Feb-19 Ubiquitous Computing

New replicas are cloned from existing replicas Replica management New replicas are cloned from existing replicas Information about new replicas propagate with normal writes (“creation write”) Information about retired replicas also propagate with normal writes (“retirement write”) Replicas are created by users or sys. Admins. Replication schedule is controlled by users Sometimes users want to choose specific replicas Tentative and committed data Applications can choose to read tentative or committed data 24-Feb-19 Ubiquitous Computing

Technology impact TrueSync - end-to-end synchronization software and infrastructure solutions for the wireless Internet http://www.starfish.com/ SyncML - SyncML is the common language for synchronizing all devices and applications over any network. Ericsson, IBM, Lotus, Motorola, Nokia, Palm Inc., Psion, Starfish Software etc. (614 companies) http://www.syncml.org/ 24-Feb-19 Ubiquitous Computing

Discussion 24-Feb-19 Ubiquitous Computing