Epoch-based Commit and Replication in Distributed OLTP Databases

许多现代面向数据的应用程序都建立在分布式OLTP数据库之上,以实现可伸缩性和高可用性。这样的分布式数据库通过两阶段提交(2PC)和同步复制在每个事务的粒度上强制执行原子性、持久性和一致性。本文提出了一种新的分布式OLTP数据库COCO,它支持基于epoch的提交和复制。COCO背后的关键思想是,它将事务划分为epoch,并将整个epoch的事务作为提交单元。

Background

Distributed Concurrency Control

包括2PL,OCC,MVCC等

The Necessity and Cost of 2PC

有些限制分布式系统性能的问题

  • two network round trip
  • multible durable write
  • increase contention

Replication in Distributed Databases

  • synchronous replication: primary backup replication and state machine replication
  • asynchronous replication

EPOCH-BASED COMMIT ANDREPLICATION

The Commit Protocol

每个epoch分为prepare和commit两个阶段,每10ms增加一个全局epoch

推荐阅读更多精彩内容