cloud era transactional processing -- problems, strategies and solutions

33
Cloud Era Transactional Processing Problems, Strategies and Solutions Yu Liu HUE&ATE Div March 8, 2016 Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 1 / 33

Upload: yu-liu

Post on 22-Jan-2018

157 views

Category:

Technology


3 download

TRANSCRIPT

Page 1: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Cloud Era Transactional ProcessingProblems, Strategies and Solutions

Yu Liu

HUE&ATE Div

March 8, 2016

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 1 / 33

Page 2: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Contents

1 Modeling & FormalizingDefinitions and Concepts

2 Choose A Sufficient Consistency Model

3 The State-of-the-art in AcademiaCoordination AvoidanceConsistency ModelsEfforts on Hardware

4 Appendix

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 2 / 33

Page 3: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Modeling & Formalizing

Contents

1 Modeling & FormalizingDefinitions and Concepts

2 Choose A Sufficient Consistency Model

3 The State-of-the-art in AcademiaCoordination AvoidanceConsistency ModelsEfforts on Hardware

4 Appendix

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 3 / 33

Page 4: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Modeling & Formalizing

Consistency Dominates the Complexity of Applications

Biggest challenge for developing applications on Eventual-consistencyNoSQL databases:

All the intermediate status of applications need to be maintained bythemselves

Controlling referential integrity between processes and data is difficult

No generalized application-specific logic for guarantee/verifycorrectness

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 4 / 33

Page 5: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Modeling & Formalizing

Constrains on Consistency

object-level: consistency between replications

session-level: read your write, writes follow reads, monotonic reads ...

process-level: handling concurrent accesses to data

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 5 / 33

Page 6: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Modeling & Formalizing

An Example For Isolating Two Concurrent Processes

If databases cannot handle such coordinations for us then it will be verytroublesome.

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 6 / 33

Page 7: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Modeling & Formalizing

Overhead and Drawback of Performance

Application-level concurrency control is usually inefficient, here are somereasons:

using coarse-grained barriers/datasets

lack of global information

optimization by hands

experience, skill-level and constraints on time/schedule

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 7 / 33

Page 8: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Modeling & Formalizing Definitions and Concepts

Contents

1 Modeling & FormalizingDefinitions and Concepts

2 Choose A Sufficient Consistency Model

3 The State-of-the-art in AcademiaCoordination AvoidanceConsistency ModelsEfforts on Hardware

4 Appendix

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 8 / 33

Page 9: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Modeling & Formalizing Definitions and Concepts

ANSI SQL Isolation Levels

ANSI’92 SQL defined four levels of isolation in terms of the four phenomena.

Isolation Level Dirty write Dirty read Fuzzy Read Phantom

READ UNCOMMITTED Ö X X XREAD COMMITTED Ö Ö X XREPEATABLE READ Ö Ö Ö X

SERIALIZABLE Ö Ö Ö Ö

Many other isolation levels and phenomena are defined besides the onesdefined in ANSI’92.

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 9 / 33

Page 10: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Modeling & Formalizing Definitions and Concepts

About Consistency Models and Isolation Levels

Read Uncommitted (RU), Read Committed (RC), Monotonic Atomic View (MAV), Item Cut Isolation (I-CI), Predicate Cut

Isolation (P-CI), Writes Follow Reads (WFR), Monotonic Reads (MR), Monotonic Writes (MW)

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 10 / 33

Page 11: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Modeling & Formalizing Definitions and Concepts

One-copy Serializability (1SR)

1SR is the desired level of data consistency for replicated systems.

One-copy serializability (1SR) guarantees a replicated DB actsequivalent to a non-replicated DB

1SR is important for ACID transactions on replicated storages

To achieve1SR coordinations between replicas is necessary, like 2PL,or consensus algorithms like Paxos

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 11 / 33

Page 12: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Modeling & Formalizing Definitions and Concepts

Snapshot Isolation

Many high performance txn systems adopt SI

all reads within a transaction see a consistent view

read never block write

non-serializable stronger than ANSI RR isolation level

SI can be extended to serializable1

1Patent: Optimistic serializable snapshot isolation, Microsoft CorporationYu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 12 / 33

Page 13: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Modeling & Formalizing Definitions and Concepts

Causal Consistency

Causal consistency provides apartial order over operationsaccording to:

Thread-of-Execution

Reads-From.

Transitive-Closure

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 13 / 33

Page 14: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Modeling & Formalizing Definitions and Concepts

Comparison of Isolation Levels

Anomaly 1SR SI C-SI Eventual

Dirty read Ö Ö Ö X

Non-repeatable read Ö Ö Ö X

Lost update Ö Ö Ö X

Short fork Ö X X X

1SR is impossible forGeo-replicated HA DBs

Eventual is a bit too weak

SI is sufficient for most usages

Causal-SI can be implementedon top of Geo-distributeddatabases

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 14 / 33

Page 15: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Choose A Sufficient Consistency Model

Contents

1 Modeling & FormalizingDefinitions and Concepts

2 Choose A Sufficient Consistency Model

3 The State-of-the-art in AcademiaCoordination AvoidanceConsistency ModelsEfforts on Hardware

4 Appendix

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 15 / 33

Page 16: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Choose A Sufficient Consistency Model

Trade-off: CAP, ACID, and Availability

All the theories about them give clear messages:

Pay for High Availability

CAP means neither Linearizability nor Serializability can beachieved with presence of network partition

For Geo-replicated system, no guarantee on arbitrary global integrityconstraints (no 1SR semantics) on data

But, it does not mean ACID transaction is not possible with highavailability

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 16 / 33

Page 17: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Choose A Sufficient Consistency Model

Low-latency and Deterministic Response

Causal consistency is the best choice for Geo-distributed HA transaction.

high volume transactionswith strict time limits

high availability inmulti-DC environments

strong reliability for txnon large clusters

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 17 / 33

Page 18: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Choose A Sufficient Consistency Model

A Bolt-On Causal Architecture

A Causability transaction framework can be implemented on top of anyeventual consistent store 2

application define itsown causal relationships

a shim layer holds thecausal consistency

the under-lying store isresponsible for liveness /durability / convergence

2Bailis, et. al., Bolt-on causal consistency. Acm Sigmod’13.Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 18 / 33

Page 19: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Choose A Sufficient Consistency Model

Example: Using Causal Txn For Copy Convergence

Using state vector (clock vector) to capture caulsalablity and implementconcurrent editing

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 19 / 33

Page 20: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

The State-of-the-art in Academia

Contents

1 Modeling & FormalizingDefinitions and Concepts

2 Choose A Sufficient Consistency Model

3 The State-of-the-art in AcademiaCoordination AvoidanceConsistency ModelsEfforts on Hardware

4 Appendix

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 20 / 33

Page 21: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

The State-of-the-art in Academia Coordination Avoidance

Contents

1 Modeling & FormalizingDefinitions and Concepts

2 Choose A Sufficient Consistency Model

3 The State-of-the-art in AcademiaCoordination AvoidanceConsistency ModelsEfforts on Hardware

4 Appendix

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 21 / 33

Page 22: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

The State-of-the-art in Academia Coordination Avoidance

Maximizing Scalability, Availability, and High Performance

Minimizing coordination blocking communication between concurrentlyexecuting operations.

lock-based, optimistic, and pre-scheduling mechanisms (2PL/2PC,Paxos, Spanner ...)

commutativity and associativity of operations (FOL, Datalog)

monotonicity and convergence (CALM theorem and CRDT objects)

Term rewriting (transaction chopping)

Coordination-free algorithms and semantics (RAMP transaction)

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 22 / 33

Page 23: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

The State-of-the-art in Academia Coordination Avoidance

Concurrency Control

Traditional Two-Phase Locking (2PL) guarantees Serializability how everyintroduced overhead is heavy.

Most of multiversion concurrency control (MVCC) databases

avoid read-write conflictsnot always necessary to achieve 1SRcontention and convergence restrictions are relaxed

some novel ways to implement MVCC fast and efficient, both for SIand for full serializability (Hekaton, Hyder)

Efficient and scalable commit protocol (Silo)

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 23 / 33

Page 24: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

The State-of-the-art in Academia Consistency Models

Contents

1 Modeling & FormalizingDefinitions and Concepts

2 Choose A Sufficient Consistency Model

3 The State-of-the-art in AcademiaCoordination AvoidanceConsistency ModelsEfforts on Hardware

4 Appendix

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 24 / 33

Page 25: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

The State-of-the-art in Academia Consistency Models

Geo-replicated Causal Consistency Transactions

Many prototype transactional systems with causal consistency areimplemented.

Orbe is a distributed KVS that incurs relatively small overhead thaneventually consistent KVS

provide a scalable and efficient implementation of causal consistencyusing physical clocksprovide read-only transactions

Eiger provides the following features:

low latency read-only and write-only transactionwrite-only transactions can atomically update multiple columns ofmultiple keys spread across multiple servers in a DCread-only transactions are non-blocking and partition tolerantmuch faster than Cassandra’s strongly consistent operations

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 25 / 33

Page 26: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

The State-of-the-art in Academia Consistency Models

Parallel Snapshot Isolation (PSI)

PSI provides a balance between consistency and latency

Asynchronous replication acrosssites

Efficient update-anywhere forcertain objects

Freedom from conflict-resolutionlogic

Strong isolation within each site

Anomaly 1SR SI PSI Eventual

Dirty read Ö Ö Ö X

Non-repeatable read Ö Ö Ö X

Lost update Ö Ö Ö X

Short fork Ö X X X

Long fork Ö Ö X X

Conflict fork Ö Ö Ö X

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 26 / 33

Page 27: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

The State-of-the-art in Academia Consistency Models

Non-Monotonic Snapshot Isolation (NMSI)

satisfies strong safety properties,and addresses the scalabilityproblems of PSI

using dependence vectors toenable the efficient computationof consistent snapshots

coordination overhead is close toRead-Committed and up to twotimes faster than PSI

Anomaly 1SR SI PSI NMSI

Dirty read Ö Ö Ö Ö

Non-repeatable read Ö Ö Ö Ö

Lost update Ö Ö Ö Ö

Short fork Ö X X X

Long fork Ö Ö X X

Conflict fork Ö Ö Ö Ö

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 27 / 33

Page 28: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

The State-of-the-art in Academia Efforts on Hardware

Contents

1 Modeling & FormalizingDefinitions and Concepts

2 Choose A Sufficient Consistency Model

3 The State-of-the-art in AcademiaCoordination AvoidanceConsistency ModelsEfforts on Hardware

4 Appendix

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 28 / 33

Page 29: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

The State-of-the-art in Academia Efforts on Hardware

Hardware Transactional Memory

HTM like Intel restricted transactional memory (RTM)

HTM allows multi-core scalability without statically partitioning thedatabase

recent mainstream CPUs reduce the overhead of locking and latching

HTM can efficiently scale out many MVCC implementations

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 29 / 33

Page 30: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

The State-of-the-art in Academia Efforts on Hardware

Remote Direct Memory Accesses (RDMA) and SSD

RDMA can help distributed transactions with strict serializability, highperformance, durability, and high availability Recent report of:

surpass 1.3 million ops (90% gets) using a single CPU core comparedwith 55K for Memcached and 59K for Redis (Pilaf)

26 million key-value operations per second with 5 µs average latencyin single machine (HERD)

140 million TATP transactions per second on 90 machines with a 4.9TB database, and and it recovers from a failure in less than 50ms(FaRM)

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 30 / 33

Page 31: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Appendix

Contents

1 Modeling & FormalizingDefinitions and Concepts

2 Choose A Sufficient Consistency Model

3 The State-of-the-art in AcademiaCoordination AvoidanceConsistency ModelsEfforts on Hardware

4 Appendix

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 31 / 33

Page 32: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Appendix

Not Be afraid of Weak Consistency

Most of modern databases provides weaker isolation level.

Database Isolation Level Default Maximum

MySQL 5.6 RR S

SQL Server 2012 RC S

Oracle 11g RC SI

Postgres 9.2.2 RC S

SAP HANA RC SI

VoltDB S SRead Committed (RC), Serializability (S), Snapshot Isolation (SI)

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 32 / 33

Page 33: Cloud Era Transactional Processing -- Problems, Strategies and Solutions

Appendix

Discussion on Consensus Algorithms

2PC

Paxos and its extensions

Multi-PaxosGeneralized PaxosRampMDCC

Yu Liu (HUE&ATE Div) Cloud Era Transactional Processing March 8, 2016 33 / 33