A Multiversion Update-Serializable Protocol for Genuine Partial Data Replication Sebastiano Peluso, Pedro Ruivo, Paolo Romano, Francesco Quaglia and Luís.

Slides:



Advertisements
Similar presentations
Concurrency Control III. General Overview Relational model - SQL Formal & commercial query languages Functional Dependencies Normalization Physical Design.
Advertisements

Optimistic Methods for Concurrency Control By : H.T. Kung & John T. Robinson Presenters: Munawer Saeed.
Concurrency Control II. General Overview Relational model - SQL  Formal & commercial query languages Functional Dependencies Normalization Physical Design.
1 CS 194: Elections, Exclusion and Transactions Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering and Computer.
Replication. Topics r Why Replication? r System Model r Consistency Models r One approach to consistency management and dealing with failures.
Safety Definitions and Inherent Bounds of Transactional Memory Eshcar Hillel.
1 Chapter 3. Synchronization. STEMPusan National University STEM-PNU 2 Synchronization in Distributed Systems Synchronization in a single machine Same.
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.
Middleware based Data Replication providing Snapshot Isolation Yi Lin Bettina Kemme Marta Patiño-Martínez Ricardo Jiménez-Peris June 15, 2005.
Computer Science Lecture 14, page 1 CS677: Distributed OS Consistency and Replication Today: –Introduction –Consistency models Data-centric consistency.
CS 582 / CMPE 481 Distributed Systems
Transaction Management and Concurrency Control
Sinfonia: A New Paradigm for Building Scalable Distributed Systems Marcos K. Aguilera, Arif Merchant, Mehul Shah, Alistair Veitch, Christonos Karamanolis.
Manajemen Basis Data Pertemuan 10 Matakuliah: M0264/Manajemen Basis Data Tahun: 2008.
Distributed Systems Fall 2009 Replication Fall 20095DV0203 Outline Group communication Fault-tolerant services –Passive and active replication Highly.
Ordering of events in Distributed Systems & Eventual Consistency Jinyang Li.
CS 603 Data Replication February 25, Data Replication: Why? Fault Tolerance –Hot backup –Catastrophic failure Performance –Parallelism –Decreased.
Recovery Techniques in Distributed Databases Naveen Jones December 5, 2011.
TRANSACTIONS AND CONCURRENCY CONTROL Sadhna Kumari.
An Introduction to Software Transactional Memory
AN OPTIMISTIC CONCURRENCY CONTROL ALGORITHM FOR MOBILE AD-HOC NETWORK DATABASES Brendan Walker.
6.4 Data And File Replication Presenter : Jing He Instructor: Dr. Yanqing Zhang.
When Scalability Meets Consistency: Genuine Multiversion Update-Serializable Partial Data Replication Sebastiano Peluso, Pedro Ruivo, Paolo Romano, Francesco.
Roberto Palmieri – Workshop on Distributed Transactional Memory (WDTM 2012) - 22/02/2012 Lisbon Boosting STM Replication via Speculation Roberto Palmieri,
HPDCS Research Group Research Focus STM Systems Dependability of STM Performance Modelling of STM EURO-TM | 1 st Plenary.
Reliable Communication in the Presence of Failures Based on the paper by: Kenneth Birman and Thomas A. Joseph Cesar Talledo COEN 317 Fall 05.
Consistent and Efficient Database Replication based on Group Communication Bettina Kemme School of Computer Science McGill University, Montreal.
PAVANI REDDY KATHURI TRANSACTION COMMUNICATION. OUTLINE 0 P ART I : I NTRODUCTION 0 P ART II : C URRENT R ESEARCH 0 P ART III : F UTURE P OTENTIAL 0 R.
Lecture 13: Multiprocessors Kai Bu
Preventive Replication in Database Cluster Esther Pacitti, Cedric Coulon, Patrick Valduriez, M. Tamer Özsu* LINA / INRIA – Atlas Group University of Nantes.
Low Cost Commit Protocols for Mobile Computing Environments Marc Perron & Baochun Bai.
IM NTU Distributed Information Systems 2004 Replication Management -- 1 Replication Management Yih-Kuen Tsay Dept. of Information Management National Taiwan.
Computer Science Lecture 13, page 1 CS677: Distributed OS Last Class: Canonical Problems Distributed synchronization and mutual exclusion Distributed Transactions.
Replication (1). Topics r Why Replication? r System Model r Consistency Models – How do we reason about the consistency of the “global state”? m Data-centric.
Commit Algorithms Hamid Al-Hamadi CS 5204 November 17, 2009.
Optimistic Methods for Concurrency Control By: H.T. Kung and John Robinson Presented by: Frederick Ramirez.
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.
2/29/ Replication CSEP 545 Transaction Processing Philip A. Bernstein Sameh Elnikety Copyright ©2012 Philip A. Bernstein.
Database Replication in WAN Yi Lin Supervised by: Prof. Kemme April 8, 2005.
Caching Consistency and Concurrency Control Contact: Dingshan He
7c.1 Silberschatz, Galvin and Gagne ©2003 Operating System Concepts with Java Module 7c: Atomicity Atomic Transactions Log-based Recovery Checkpoints Concurrent.
Replication (1). Topics r Why Replication? r System Model r Consistency Models r One approach to consistency management and dealing with failures.
Computer Science and Engineering Copyright by Hesham El-Rewini Advanced Computer Architecture CSE 8383 March 20, 2008 Session 9.
1/12 Distributed Transactional Memory for Clusters and Grids EuroTM, Paris, May 20th, 2011 Michael Schöttner.
Multidatabase Transaction Management COP5711. Multidatabase Transaction Management Outline Review - Transaction Processing Multidatabase Transaction Management.
Fault Tolerance and Checkpointing - Sathish Vadhiyar.
Database Isolation Levels. Reading Database Isolation Levels, lecture notes by Dr. A. Fekete, resentation/AustralianComputer.
Don’t be lazy, be consistent: Postgres-R, A new way to implement Database Replication Paper by Bettina Kemme and Gustavo Alonso, VLDB 2000 Presentation.
Relaxed Currency Serializability for Middle-Tier Caching and Replication Philip A. Bernstein, Alan Fekete, Hongfei Guo, Raghu Ramakrishnan, Pradeep Tamma.
CS 540 Database Management Systems NoSQL & NewSQL Some slides due to Magda Balazinska 1.
CS 440 Database Management Systems
The University of Adelaide, School of Computer Science
The University of Adelaide, School of Computer Science
The University of Adelaide, School of Computer Science
The University of Adelaide, School of Computer Science
CS 440 Database Management Systems
Concurrency Control II (OCC, MVCC)
Chapter 10 Transaction Management and Concurrency Control
Nicolas Schiper Fernando Pedone University of Lugano Switzerland
EEC 688/788 Secure and Dependable Computing
Distributed Database Management Systems
The University of Adelaide, School of Computer Science
Lecture 17 Multiprocessors and Thread-Level Parallelism
Lecture 17 Multiprocessors and Thread-Level Parallelism
The University of Adelaide, School of Computer Science
Concurrency control (OCC and MVCC)
Outline Introduction Background Distributed DBMS Architecture
Lecture 17 Multiprocessors and Thread-Level Parallelism
Presentation transcript:

A Multiversion Update-Serializable Protocol for Genuine Partial Data Replication Sebastiano Peluso, Pedro Ruivo, Paolo Romano, Francesco Quaglia and Luís Rodrigues Euro-TM Workshop on Transactional Memory (WTM 2012), Bern, Switzerland

Distributed STMs STMs are being employed in new scenarios: Database caches in three-tier web apps (FénixEDU) HPC programming language (X10) In-memory cloud data grids (Coherence, Infinispan) New challenges: Scalability Fault-tolerance Euro-TM Workshop on Transactional Memory (WTM 2012), Bern, Switzerland REPLICATION 1

Partial Replication Each site stores a partial copy of the data. Genuine partial replication schemes maximize scalability by ensuring that: Only data sites that replicate data item read or written by a transaction T, exchange messages for executing/committing T. Existing 1-Copy Serializable implementations enforce distributed validation of read-only transactions [SRDS10]: considerable overheads in typical workloads Euro-TM Workshop on Transactional Memory (WTM 2012), Bern, Switzerland 2

Issues with Partial Replication Extending existing local multiversion (MV) STMs is not enough. Local MV STMs rely on a single global counter to track version advancement. Problem: Commit of transactions should involve ALL NODES NO GENUINENESS = POOR SCALABILITY Euro-TM Workshop on Transactional Memory (WTM 2012), Bern, Switzerland 3

GMU: Genuine Multiversion Update- Serializable Replication [ICDCS12] In the execution/commit phase of a transaction T, ONLY nodes which store data items accessed by T are involved. It uses multiple versions for each data item It builds visible snapshots = freshest consistent snapshots taking into account: 1. causal dependencies vs. previously committed transactions at the time a transaction began, 2. previous reads executed by the same transaction Vector clocks used to establish visible snapshots Euro-TM Workshop on Transactional Memory (WTM 2012), Bern, Switzerland G M U 4

High Level Overview (i) Transactions commit using a vector clock. Each node stores a log of committed vector clocks. Euro-TM Workshop on Transactional Memory (WTM 2012), Bern, Switzerland 5 Initial view of the visible snapshot Upon a transaction T begins on N: it acquires the most recent vector clock in N’s commit log. View extension of the visible snapshot Upon T reads on a node N: T’s vector clock can be modified according to N’s commit log. Three reading rules are applied using T’s vector clock.

High Level Overview (ii) Euro-TM Workshop on Transactional Memory (WTM 2012), Bern, Switzerland 6 Write operation Upon a transaction T writes V on data item O: it inserts in T’s write-set. Commit operation Read-only transactions always commit. Update transactions run a genuine 2-Phase Commit: Upon prepare message reception (participant-side) acquire read/write locks and validate read-set, send back a tentative commit vector clock. If all replies are positive (coordinator-side) multicast write-set and final commit vector clock.

Rule 1: Reading Lower Bound Node 0 Node 1 (it stores X) Node 2 (it stores Y) X (2) T 1 :R(X) (1,1,1) (1,2,2) (1,1,1) Y (2) (1,2,2) T 0 :W(X,v) T 0 :W(Y,w) (1,1,1) T 1 :R(Y) Y (2) (1,2,2) Most recent VC in VCLog T 1.VC T 0 :Commit Commit (1,2,2) T 1.VC Euro-TM Workshop on Transactional Memory (WTM 2012), Bern, Switzerland 7

Rule 2: Reading Upper Bound Node 0 Node 1 (it stores X) Node 2 (it stores Y) X (3) Y (2) X (1) T 1 :R(X) (1,1,1) (1,3,3) (1,1,1) Y (3) (1,3,3) T 0 :W(X,v) T 0 :W(Y,w) X (1) (1,1,1) T 1 :R(Y)Y (2) T 1 :Commit (1,1,1) Most recent VC in VCLog T 1.VC T 0 :Commit Commit (1,1,2) T 1.VC Euro-TM Workshop on Transactional Memory (WTM 2012), Bern, Switzerland (1,1,2) Y (1) 8

Rule 3: Selection of Data Versions Informally: observe the most recent consistent version of data item id on node i based on T’s history (previous reads). Formally: iterate over the versions of id and return the most recent one s.t. id.version.VN <= T.VC[i] Euro-TM Workshop on Transactional Memory (WTM 2012), Bern, Switzerland 9

Building the commit Vector Clock Based on a variant of the Skeen’s total order multicast algorithm [SKEEN85]. Intuition: Serialize all-and-only conflicting transactions, tracking direct and transitive conflict dependencies, causal relationship Euro-TM Workshop on Transactional Memory (WTM 2012), Bern, Switzerland 10

Consistency Criterion GMU ensures Extended Update Serializability: Update Serializability [ICDT86] ensures: 1-Copy-Serializabilty (1CS) on the history restricted to committed update transactions; 1CS on the history restricted to committed update transactions and any single read-only transaction. But it can admit non-1CS histories containing at least 2 read-only transactions. Extended Update Serializability [Adya99]: ensures US property also to executing transactions; analogous to opacity in STMs. Euro-TM Workshop on Transactional Memory (WTM 2012), Bern, Switzerland 11

Experiments on private cluster 8 core physical nodes TPC-C - 90% read-only xacts - 10% update xacts - 4 threads per node - moderate contention (15% abort rate at 20 nodes) Euro-TM Workshop on Transactional Memory (WTM 2012), Bern, Switzerland 12

Thanks for the attention Euro-TM Workshop on Transactional Memory (WTM 2012), Bern, Switzerland 13

References Euro-TM Workshop on Transactional Memory (WTM 2012), Bern, Switzerland [Adya99] A. Adya, “Weak consistency: A generalized theory and optimistic implementations for distributed transactions,” tech. rep., PhD Thesis, Massachusetts Institute of Technology, [ICDCS12] Sebastiano Peluso, Pedro Ruivo, Paolo Romano, Francesco Quaglia, Luís Rodrigues. “When Scalability Meets Consistency: Genuine Multiversion Update-Serializable Partial Replication”. The IEEE 32 nd International Conference on Distributed Computing Systems, June, [ICDT86] R. C. Hansdah and L. M. Patnaik, “Update serializability in locking,”. International Conference of Database Theory, vol. 243 of Lecture Notes in Computer Science, pp. 171–185, Springer Berlin / Heidelberg, [SKEEN85] D. Skeen. “Unpublished communication”, Referenced in K. Birman, T. Joseph “Reliable Communication in the Presence of Failures”, ACM Trans. on Computer Systems, 47-76, 1987 [SRDS10] Nicolas Schiper, Pierre Sutra, Fernando Pedone. “P-Store: Genuine Partial Replication in Wide Area Networks”. Proc. of the 29 th Symposium of Reliable Distributed Systems,