Fast General Distributed Transactions with Opacity using Global Time
Alex Shamis, Matthew Renzelmann, Stanko Novakovic, Georgios, Chatzopoulos, Anders T. Gjerdrum, Dan Alistarh, Aleksandar Dragojevic,, Dushyanth Narayanan, and Miguel Castro

TL;DR
This paper presents a high-performance distributed transaction system that guarantees opacity, providing strict serializability for all transactions, including aborted ones, by leveraging synchronized clocks and a failover protocol within a data center.
Contribution
It extends FaRM to support opacity with high throughput and low latency using real-time timestamp ordering and clock synchronization.
Findings
Achieves 5.4 million neworder transactions/sec on 90 machines
Maintains high throughput, low latency, and high availability
Provides strict serializability for all transactions, including aborted ones
Abstract
Transactions can simplify distributed applications by hiding data distribution, concurrency, and failures from the application developer. Ideally the developer would see the abstraction of a single large machine that runs transactions sequentially and never fails. This requires the transactional subsystem to provide opacity (strict serializability for both committed and aborted transactions), as well as transparent fault tolerance with high availability. As even the best abstractions are unlikely to be used if they perform poorly, the system must also provide high performance. Existing distributed transactional designs either weaken this abstraction or are not designed for the best performance within a data center. This paper extends the design of FaRM - which provides strict serializability only for committed transactions - to provide opacity while maintaining FaRM's high throughput,…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed systems and fault tolerance · Parallel Computing and Optimization Techniques · Optimization and Search Problems
