Low Cost Commit Protocols for Mobile Computing Environments Marc Perron & Baochun Bai.

Slides:



Advertisements
Similar presentations
Serializability in Multidatabases Ramon Lawrence Dept. of Computer Science
Advertisements

Consistency and Replication Chapter 7 Part II Replica Management & Consistency Protocols.
Message Queues COMP3017 Advanced Databases Dr Nicholas Gibbins –
Chapter 19 Database Recovery Techniques
Database Systems, 8 th Edition Concurrency Control with Time Stamping Methods Assigns global unique time stamp to each transaction Produces explicit.
1 Database Replication Using Generalized Snapshot Isolation Sameh Elnikety, EPFL Fernando Pedone, USI Willy Zwaenepoel, EPFL.
Exercises for Chapter 17: Distributed Transactions
CIS 720 Concurrency Control. Timestamp-based concurrency control Assign a timestamp ts(T) to each transaction T. Each data item x has two timestamps:
Distributed Systems Fall 2010 Replication Fall 20105DV0203 Outline Group communication Fault-tolerant services –Passive and active replication Highly.
Database Replication techniques: a Three Parameter Classification Authors : Database Replication techniques: a Three Parameter Classification Authors :
CS 582 / CMPE 481 Distributed Systems
ICS (072)Database Recovery1 Database Recovery Concepts and Techniques Dr. Muhammad Shafique.
Synchronization. Physical Clocks Solar Physical Clocks Cesium Clocks International Atomic Time Universal Coordinate Time (UTC) Clock Synchronization Algorithms.
Session - 14 CONCURRENCY CONTROL CONCURRENCY TECHNIQUES Matakuliah: M0184 / Pengolahan Data Distribusi Tahun: 2005 Versi:
Manajemen Basis Data Pertemuan 10 Matakuliah: M0264/Manajemen Basis Data Tahun: 2008.
1 Distributed Databases CS347 Lecture 16 June 6, 2001.
Distributed Systems Fall 2009 Replication Fall 20095DV0203 Outline Group communication Fault-tolerant services –Passive and active replication Highly.
1 CS 194: Distributed Systems Distributed Commit, Recovery Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering.
Two Techniques For Improving Distributed Database Performance ICS 214B Presentation Ambarish Dey Vasanth Venkatachalam March 18, 2004.
DISTRIBUTED CACHE SYSTEM EE SOFTWARE LAB, TECHNION By Shamil Nisimov Dror Bohrer Supervisor : Yaron Ben Shoshan Lab Engineer : David Ilana.
©Silberschatz, Korth and Sudarshan19.1Database System Concepts Distributed Transactions Transaction may access data at several sites. Each site has a local.
1 More on Distributed Coordination. 2 Who’s in charge? Let’s have an Election. Many algorithms require a coordinator. What happens when the coordinator.
CMPT 401 Summer 2007 Dr. Alexandra Fedorova Lecture XI: Distributed Transactions.
CMPT Dr. Alexandra Fedorova Lecture XI: Distributed Transactions.
Distributed Systems Fall 2009 Distributed transactions.
CMPT Dr. Alexandra Fedorova Lecture XI: Distributed Transactions.
Concurrency Control In Dynamic Database Systems Laurel Jones.
Distributed Databases
Version Control. What is Version Control? Manages file sharing for Concurrent Development Keeps track of changes with Version Control SubVersion (SVN)
TRANSACTIONS AND CONCURRENCY CONTROL Sadhna Kumari.
AN OPTIMISTIC CONCURRENCY CONTROL ALGORITHM FOR MOBILE AD-HOC NETWORK DATABASES Brendan Walker.
Concurrency Control in Distributed Databases. By :- Rishikesh Mandvikar rmandvik[at]engr.smu.edu May 1, 2004.
1 6.4 Distribution Protocols Different ways of propagating/distributing updates to replicas, independent of the consistency model. First design issue.
Distributed Transactions March 15, Transactions What is a Distributed Transaction?  A transaction that involves more than one server  Network.
Chapter 19 Recovery and Fault Tolerance Copyright © 2008.
Transaction Communications Yi Sun. Outline Transaction ACID Property Distributed transaction Two phase commit protocol Nested transaction.
Distributed Transactions
Operating Systems Distributed Coordination. Topics –Event Ordering –Mutual Exclusion –Atomicity –Concurrency Control Topics –Event Ordering –Mutual Exclusion.
University of Tampere, CS Department Distributed Commit.
IM NTU Distributed Information Systems 2004 Replication Management -- 1 Replication Management Yih-Kuen Tsay Dept. of Information Management National Taiwan.
 Distributed file systems having transaction facility need to support distributed transaction service.  A distributed transaction service is an extension.
Computer Science Lecture 13, page 1 CS677: Distributed OS Last Class: Canonical Problems Distributed synchronization and mutual exclusion Distributed Transactions.
Computer Science Lecture 13, page 1 CS677: Distributed OS Last Class: Canonical Problems Election algorithms –Bully algorithm –Ring algorithm Distributed.
A Survey on Optimistic Concurrency Control CAI Yibo ZHENG Xin
1 Multiversion Reconciliation for Mobile Databases Shirish Hemanath Phatak & B.R.Badrinath Presented By Presented By Md. Abdur Rahman Md. Abdur Rahman.
Transactions and Concurrency Control. Concurrent Accesses to an Object Multiple threads Atomic operations Thread communication Fairness.
Energy-Efficient Data Caching and Prefetching for Mobile Devices Based on Utility Huaping Shen, Mohan Kumar, Sajal K. Das, and Zhijun Wang P 邱仁傑.
Page 1 Concurrency Control Paul Krzyzanowski Distributed Systems Except as otherwise noted, the content of this presentation.
Introduction to Distributed Databases Yiwei Wu. Introduction A distributed database is a database in which portions of the database are stored on multiple.
Antidio Viguria Ann Krueger A Nonblocking Quorum Consensus Protocol for Replicated Data Divyakant Agrawal and Arthur J. Bernstein Paper Presentation: Dependable.
SHUJAZ IBRAHIM CHAYLASY GNOPHANXAY FIT, KMUTNB JANUARY 05, 2010 Distributed Database Systems | Dr.Nawaporn Wisitpongphan | KMUTNB Based on article by :
Highly Available Services and Transactions with Replicated Data Jason Lenthe.
10-Jun-16COMP28112 Lecture 131 Distributed Transactions.
Outline Introduction Background Distributed DBMS Architecture
Two phase commit.
Commit Protocols CS60002: Distributed Systems
RELIABILITY.
Today: Coda, xFS Case Study: Coda File System
CSE 4340/5349 Mobile Systems Engineering
Replication and Recovery in Distributed Systems
Distributed Transactions
Lazy Type Changes in Object-oriented Databases
Brahim Ayari, Abdelmajid Khelil, Neeraj Suri and Eugen Bleim
Exercises for Chapter 14: Distributed Transactions
Distributed Databases Recovery
Concurrency control (OCC and MVCC)
CIS 720 Concurrency Control.
System-Level Support CIS 640.
Transaction Communication
Presentation transcript:

Low Cost Commit Protocols for Mobile Computing Environments Marc Perron & Baochun Bai

Introduction Introduction to Mobile Database Environment Commit Protocols Classical Two-Phase Commit Mobile Two-Phase Commit Optimistic Concurrency Control with Update Time Stamp Conclusion : Which is better

Mobile database environment ! Mobile networks are composed of cells. ! Similar to C/S environment. ! Base station (Mobile Support Station) ! Mobile unit ! Low bandwidth ! High error rate

Mobile database environment ! Asymmetry in communication B Downstream (server-to-client) bandwidth is high. Using broadcast disk method to deliver data to client. B Upstream (client-to-server) bandwidth is low. ! High disconnection rate ! Power limitation

Commit Protocols ! 2-Phase Commit (2PC) = Two phases: Prepare Phase and Commit Phase = Logs are maintained on the base stations ! Presumed Commit (PC) = Optimized 2PC = Reduces the number of exchanged messages and the number of log

Commit Protocols (Cont.) ! Early Prepare (EP) = Eliminates a round messages by putting a transaction into ready state as soon as it finishes processing the work part of the transaction. ! WoundCertifier = Certification report with ReadSet and WriteSet of active transactions is broadcasting by server.

Commit Protocols (Cont.) ! Batched Transaction = Executes the entire transaction on the mobile unit using cached copies of data. ! Optimistic Concurrency Control with Update Time Stamp (OCC-UTS) = Each data item has a timestamp. = Invalidation report broadcast by server. = Two versions (with or without local cache).

Commit Protocols Focus on two commit protocols: Classical 2-Phase Commit Presumed Commit Presumed Abort Optimistic Concurrency Control with Update Time Stamp

Classical 2PC  In Mobile Environment, behaves essentially the same as in non-mobile distributed environments  A few differences arrise due to mobile nature:  Mobile Client logs maintained on fixed network  Behaviour slightly modified to reduce messages sent over wireless link

Classical 2PC Phase 1:  Co-ordinator sends 'prepare' message to all participants to prepare them to commit the transaction Phase 2:  If all participants respond successfully to the prepare message, the co-ordinator globaly commits the transaction

Classical 2PC Non-Mobile Database Environment  Co-ordinator: The process at the site where the transaction originated. The execution controlled by this process  Participant: Processes at other sites participating in executing the transaction

Classical 2PC In Mobile Computing Environment  Mobile unit always co-ordinator  Large number of messages over wireless link  Not all participants directly accessable from mobile units

M-2PC (Mobile-2PC) Modifications to 2PC for mobile environment  Base station replaces mobile unit as transaction co-ordinator  Control of transaction handed off with state information

M-2PC Participant State Diagram (MU)

M-2PC State Diagram for co-ordinator/participant (FN)

Optimistic Concurrency Control with Update Time Stamp  On transaction commit, server verifies that execution is serializable.  Two forms of validation:  Backward: Check if commiting transaction invalidated by commit of another.  Forward: Check if commiting transaction conflicts with any other active transaction.

OCC-UTS  Data has time stamp associated with it  Time stamps used to determine if transaction attempting commit is serializable  Mobile client checks transactional cache consistency using invalidation reports from server

OCC-UTS Upon receiving commit operation:  Mobile client sends RequestToCommit message  Mobile client listens to CommitList and AbortList to determine outcome of transaction

OCC-UTS Server's algorithm  Server keeps list of updated data items for transactions committed between t si -  L and t si.   : number of invalidation broadcast windows  L: Length of broadcast window  t si : most recent time stamp on a data item

OCC-UTS Server receives RequestToCommit message  adds message to outsanding RequestToCommit queue  Takes a message m from queue  If at least one data item in m has timestamp older than most recent, transaction is aborted  Otherwise transaction commited

Conclusion  OCC-UTS takes advantage of broadcast disks  Requires fewer upstream messages on a wireless link  Less complex than M-2PC, transactions performed on local cached data  We conclude that OCC-UTS better than M- 2PC for mobile computing environment

Summary Low Cost Commit Protocols for Mobile Computing Environments Introduction Commit Protocols Two Phase Commit Mobile-Two Phase Commit Optimistic Concurrency Control with Update Timestamp Conclusion