Performance-Optimal Read-Only Transactions
Author(s): Lu, Haonan; Sen, Siddhartha; Lloyd, Wyatt
DownloadTo refer to this page use:
http://arks.princeton.edu/ark:/88435/pr1z24s
Abstract: | Read-only transactions are critical for consistently reading data spread across a distributed storage system but have worse performance than simple, non-transactional reads. We identify three properties of simple reads that are necessary for read-only transactions to be performance-optimal, i.e., come as close as possible to simple reads. We demonstrate a fundamental tradeoff in the design of read-only transac- tions by proving that performance optimality is impossible to achieve with strict serializability, the strongest consistency. Guided by this result, we present PORT, a performance- optimal design with the strongest consistency to date. Cen- tral to PORT are version clocks, a specialized logical clock that concisely captures the necessary ordering constraints. We show the generality of PORT with two applications. Scylla-PORT provides process-ordered serializability with simple writes and shows performance comparable to its non- transactional base system. Eiger-PORT provides causal con- sistency with write transactions and significantly improves the performance of its transactional base system. |
Publication Date: | 2020 |
Citation: | Lu, Haonan, Siddhartha Sen, and Wyatt Lloyd. "Performance-Optimal Read-Only Transactions." In 14th USENIX Symposium on Operating Systems Design and Implementation (2020): pp. 333-349. |
Pages: | 333 - 349 |
Type of Material: | Conference Article |
Journal/Proceeding Title: | 14th USENIX Symposium on Operating Systems Design and Implementation |
Version: | Final published version. This is an open access article. |
Items in OAR@Princeton are protected by copyright, with all rights reserved, unless otherwise indicated.