🤖 AI Summary
To address the challenge of balancing high performance and strong consistency in multi-region distributed transactions, this paper introduces K2, a geographically distributed storage system that leverages TrueTime clocks (TTC) to enable cross-region strongly consistent transactions. Our approach comprises three key contributions: (1) a scalable small-uncertainty timestamp generation mechanism that significantly reduces waiting overhead induced by clock skew; (2) a redesigned Multi-Version Concurrency Control (MVCC) protocol supporting efficient execution of mixed read-write transactions; and (3) a TrueTime-based replica visibility protocol enabling low-latency asynchronous reads. Experimental evaluation demonstrates that K2 achieves an order-of-magnitude higher transaction throughput compared to state-of-the-art geo-distributed transaction protocols, while reducing replica visibility latency by up to 90%.
📝 Abstract
TrueTime clocks (TTCs) that offer accurate and reliable time within limited uncertainty bounds have been increasingly implemented in many clouds. Multi-region data stores that seek decentralized synchronization for high performance represent an ideal application of TTC. However, the co-designs between the two were often undervalued or failed to realize their full potential. This paper proposes K2, a multi-region data store that intensely explores the opportunity of using TTC for distributed transactions. Compared to its pioneer, Google Spanner, K2 augments TTC's semantics in three core design pillars. First, K2 carries a new timestamp-generating scheme that is capable of providing a small time uncertainty bound at scale. Second, K2 revitalizes existing multi-version timestamp-ordered concurrency control to realize multi-version properties for read-write transactions. Third, K2 introduces a new TTC-based visibility control protocol that provides efficient reads at replicas. Our evaluation shows that, K2 achieves an order of magnitude higher transaction throughput relative to other practical geo-distributed transaction protocols while ensuring a lower visibility delay at asynchronous replicas.