Detock: High Performance Multi-region Transactions at Scale

Detock: High Performance Multi-region Transactions at Scale
复制标题

DOI:
10.1145/3589293
复制
发表时间:
2023-06
期刊:
Proceedings of the ACM on Management of Data
影响因子:
--
通讯作者:
Cuong D. T. Nguyen;Johann K. Miller;D. Abadi
Cuong D. T. Nguyen;Johann K. Miller;D. Abadi
中科院分区:
其他
文献类型:
--
作者:
Cuong D. T. Nguyen;Johann K. Miller;D. Abadi

文献摘要

相似文献

许多分布在全球的数据存储需要跨越很大的地理距离复制数据。由于跨这样的距离同步复制数据是缓慢的,因此具有高一致性要求的那些系统通常对数据进行地理分区,并将所有可线性化的请求定向到所访问数据的主区域。这显著提高了大多数事务访问靠近其来源的数据的工作负载的性能。然而,支持可串行化的多地理分区事务是一个挑战,它们往往会降低整个系统的性能。当它们与单分区请求冲突时,这变得更具挑战性,其中乐观协议导致大量的中止,而悲观协议导致大量的分布式死锁。在本文中,我们描述了并发控制和死锁解决协议的设计,该协议构建在名为Detock的地理复制数据库系统的实用、完整的实现中,该系统能够处理严格可序列化的多区域事务,在极高的冲突和数量级吞吐量下性能下降接近零相对于最先进的地理复制方法,同时将等待时间提高到5倍。
Many globally distributed data stores need to replicate data across large geographic distances. Since synchronously replicating data across such distances is slow, those systems with high consistency requirements often geo-partition data and direct all linearizable requests to the primary region of the accessed data. This significantly improves performance for workloads where most transactions access data close to where they originate from. However, supporting serializable multi-geo-partition transactions is a challenge, and they often degrade the performance of the whole system. This becomes even more challenging when they conflict with single-partition requests, where optimistic protocols lead to high numbers of aborts, and pessimistic protocols lead to high numbers of distributed deadlocks. In this paper, we describe the design of concurrency control and deadlock resolution protocols, built within a practical, complete implementation of a geographically replicated database system called Detock, that enables processing strictly-serializable multi-region transactions with near-zero performance degradation at extremely high conflict and order of magnitude higher throughput relative to state-of-the art geo-replication approaches, while improving latency by up to a factor of 5.