Publication | Open Access
Clock-SI: Snapshot Isolation for Partitioned Data Stores Using Loosely Synchronized Clocks
61
Citations
31
References
2013
Year
Unknown Venue
Cluster ComputingEngineeringComputer ArchitectureSnapshot IsolationTransactional SystemTransaction ProcessingConcurrency ControlHardware SecurityParallel ComputingData ManagementComputer EngineeringDistributed SystemsComputer ScienceDistributed TransactionTransaction LatencyCloud ComputingDistributed Data StoreAsynchronous SystemsIn-storage ComputingSnapshot Age
Clock-SI is a fully distributed protocol that implements snapshot isolation (SI) for partitioned data stores. It derives snapshot and commit timestamps from loosely synchronized clocks, rather than from a centralized timestamp authority as used in current systems. A transaction obtains its snapshot timestamp by reading the clock at its originating partition and Clock-SI provides the corresponding consistent snapshot across all the partitions. In contrast to using a centralized timestamp authority, Clock-SI has availability and performance benefits: It avoids a single point of failure and a potential performance bottleneck, and improves transaction latency and throughput. We develop an analytical model to study the trade-offs introduced by Clock-SI among snapshot age, delay probabilities of transactions, and abort rates of update transactions. We verify the model predictions using a system implementation. Furthermore, we demonstrate the performance benefits of Clock-SI experimentally using a micro-benchmark and an application-level benchmark on a partitioned key-value store. For short read-only transactions, Clock-SI improves latency and throughput by 50% by avoiding communications with a centralized timestamp authority. With a geographically partitioned data store, Clock-SI reduces transaction latency by more than 100 milliseconds. Moreover, the performance benefits of Clock-SI come with higher availability.
| Year | Citations | |
|---|---|---|
Page 1
Page 1