Affiliation:
1. University of Maryland, College Park, MD, USA
Abstract
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.
Funder
National Science Foundation
Publisher
Association for Computing Machinery (ACM)
Reference60 articles.
1. 2007. ZeroMQ. https://zeromq.org/. 2007. ZeroMQ. https://zeromq.org/.
2. 2009. MongoDB. https://mongodb.com. 2009. MongoDB. https://mongodb.com.
3. 2010. TPC Benchmark C. http://www.tpc.org/tpcc/. 2010. TPC Benchmark C. http://www.tpc.org/tpcc/.
4. 2012. Fauna. https://fauna.com. 2012. Fauna. https://fauna.com.
5. 2021. tc(8) - Linux manual page. https://man7.org/linux/man-pages/man8/tc.8.html. 2021. tc(8) - Linux manual page. https://man7.org/linux/man-pages/man8/tc.8.html.