G-DUR A Middleware for Assembling, Analyzing, and Improving Transactional Protocols Masoud Saeida Ardekani * , INRIA & UPMC-Lip6 Pierre Sutra, Université de Neuchâtel Marc Shapiro, INRIA & UPMC-Lip6 * now @ Purdue University Masoud Saeida Ardekani 10/12/2014 1
Motivation • Understanding transactional protocols • Perform apples-to-apples comparison • Study their bottlenecks • Improve them Masoud Saeida Ardekani 10/12/2014 2
Insight Execution Phase Termination Phase Read account a Commit Transfer $100 from account a to b Write Changes atomically • Read an object • Certification • Read the latest committed • No write-write and read-write conflict version • No write-write conflict • Take a consistent snapshot • Atomic Commitment • Take the latest consistent • 2PC snapshot • Atomic Broadcast • Atomic Multicast + Voting • Commutativity • commute if no read-write nor write- write conflict • commute if no write-write conflict Masoud Saeida Ardekani 10/12/2014 3
Insight Execution Phase Termination Phase Read account a Commit Transfer $100 from account a to b Write Changes atomically • Read an object • Certification • Read the latest committed • No write-write and read-write conflict version • No write-write conflict • Take a consistent snapshot • Atomic Commitment • Take the latest consistent • 2PC snapshot • Atomic Broadcast • Atomic Multicast + Voting • Commutativity • commute if no read-write nor write- write conflict • commute if no write-write conflict Masoud Saeida Ardekani 10/12/2014 4
Insight Execution Phase Termination Phase Read account a Commit Transfer $100 from account a to b Write Changes atomically • Read an object • Certification • Read the latest committed • No write-write and read-write conflict version • No write-write conflict • Take a consistent snapshot • Atomic Commitment • Take the latest consistent • 2PC snapshot • Atomic Broadcast • Atomic Multicast + Voting • Commutativity • commute if no read-write nor write- write conflict • commute if no write-write conflict Masoud Saeida Ardekani 10/12/2014 5
G-DUR: Generic Deferred Update Replication Clients Begin CRUD Operations Commit … G-DUR G-DUR CRUD DS Instance Instance Execution Termination • Read an object • Certification • Atomic Commitment • Commutativity Masoud Saeida Ardekani 10/12/2014 6
Programming Effort Realization P-Store [SRDS’10] GMU [ICDCS’12] Point Read Object Read the latest version of Read the latest consistent objects snapshot Atomic Com. Atomic Multicast + Voting 2PC Certify No read-write or write-write If (write-set is empty) conflict Commit else No read-write or write-write confclit Commutativity No read-write or write-write No read-write or write-write conflict conflict Masoud Saeida Ardekani 10/12/2014 7
Ease of Programming Protocol Source Lines of Code Consistency G-DUR Original P-Store [SRDS’10] Serializability 179 6000 [Java] S-DUR [DSN’12] Serializability 397 N/A GMU [ICDCS’12] Update 476 6000 [Java] Serializability Serrano [PRDC’07] Snapshot Isolation 351 N/A Walter [SOSP’11] Parallel Snapshot 599 30000 [C++] Isolation Jessy [SRDS’13] Non-monotonic 352 6000 [Java] Snapshot Isolation Framework SLOC ~ 20’000 Masoud Saeida Ardekani 10/12/2014 8
Case Study • Apples-to-apples Comparison • Study bottlenecks and limitations of protocol • Improving Protocol • Compare degrees of dependability Masoud Saeida Ardekani 10/12/2014 9
Evaluation Setup • 4 Sites in Grid’5000 • Clients distributed uniformly among sites • Modified YCSB benchmark [SOCC’10] Disaster Tolerant Disaster Prone Y Y x U x Z Z Z U Y U X Non-Monotonic Snapshot Isolation 01/10/13 10 Masoud Saeida Ardekani
Comparing Protocols in Disaster Prone Rep. 2 Read Operations for R-O txn 1 Read, 1 Update for UP txn Termination Latency of Update Transactions (ms) 10% Update transactions and 90% Read-only transactions 30% Update transactions and 70% Read-only transactions P-Store-SER GMU-US Jessy-NMSI Serrano-SI SDUR-SER RC Walter-PSI Masoud Saeida Ardekani 10/12/2014 11
Consistency (Isolation level) Hierarchy More Scalability and Performance Easier Coding and Reasoning for App Strict Serializability (SSER) Snapshot Isolation (SI) Serializability (SER) Update Serializability (US) Parallel Snapshot Isolation (PSI) [SOSP’11] Non-monotonic Snapshot Isolation (NMSI) [SRDS’13] Read Committed (RC) Masoud Saeida Ardekani 10/12/2014 12
Comparing Protocols in Disaster Prone Rep. 2 Read Operations for R-O txn 1 Read, 1 Update for UP txn Termination Latency of Update Transactions (ms) 10% Update transactions and 90% Read-only transactions 30% Update transactions and 70% Read-only transactions P-Store-SER GMU-US Jessy-NMSI Serrano-SI SDUR-SER RC Walter-PSI Masoud Saeida Ardekani 10/12/2014 13
Genuine Partial Replication (GPR) [Schiper’10] • Only replicas of objects read or X written inside transaction X=X+2 communicate X X++ • Non-conflicting transactions do not Y-- interfere � More Parallelism Y Y=Y-3 • Disjoint-Access-Parallelism Y • In the next slide we compare a GPR protocol with a non-GPR protocol Z Z++ Z Masoud Saeida Ardekani 10/12/2014 14
Comparing Protocols in Disaster Prone Rep. 2 Read Operations for R-O txn 1 Read, 1 Update for UP txn Termination Latency of Update Transactions (ms) 10% Update transactions and 90% Read-only transactions 30% Update transactions and 70% Read-only transactions P-Store-SER GMU-US Jessy-NMSI Serrano-SI SDUR-SER RC Walter-PSI Masoud Saeida Ardekani 10/12/2014 15
Comparing Protocols in Disaster Prone Rep. 2 Read Operations for R-O txn 1 Read, 1 Update for UP txn Termination Latency of Update Transactions (ms) 10% Update transactions and 90% Read-only transactions 30% Update transactions and 70% Read-only transactions P-Store-SER GMU-US Jessy-NMSI Serrano-SI SDUR-SER RC Walter-PSI Masoud Saeida Ardekani 10/12/2014 16
Minimal Commitment Sync. (MCS) • Abort a transaction in case of • a read-write or write-write conflict • write-write conflict • In the next slide we study the effect of MCS Masoud Saeida Ardekani 10/12/2014 17
Comparing Protocols in Disaster Prone Rep. 2 Read Operations for R-O txn 1 Read, 1 Update for UP txn Termination Latency of Update Transactions (ms) 10% Update transactions and 90% Read-only transactions 30% Update transactions and 70% Read-only transactions P-Store-SER GMU-US Jessy-NMSI Serrano-SI SDUR-SER RC Walter-PSI Masoud Saeida Ardekani 10/12/2014 18
Comparing Protocols in Disaster Tolerant Rep. 2 Read Operations for R-O txn 1 Read, 1 Update for UP txn Termination Latency of Update Transactions (ms) 90% Read-only transactions 70% Read-only transactions Jessy 2pc - P-Store-SER GMU-US Serrano-SI NMSI SDUR-SER RC Walter-PSI Masoud Saeida Ardekani 10/12/2014 19
Summary / Conclusion • Many transactional protocols follow DUR approach • G-DUR allows fast prototyping of protocols to: • Compare protocols • study limitations & bottlenecks of a protocol • In the paper, compare degrees of dependability • Common specification language Masoud Saeida Ardekani 10/12/2014 20
Recommend
More recommend