SI-CV: snapshot isolation with co-located versions

  • Authors:
  • Robert Gottstein;Ilia Petrov;Alejandro Buchmann

  • Affiliations:
  • Databases and Distributed Systems Group, TU-Darmstadt, Germany;Databases and Distributed Systems Group, TU-Darmstadt, Germany;Databases and Distributed Systems Group, TU-Darmstadt, Germany

  • Venue:
  • TPCTC'11 Proceedings of the Third TPC Technology conference on Topics in Performance Evaluation, Measurement and Characterization
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Snapshot Isolation is an established concurrency control algorithm, where each transaction executes against its own version/snapshot of the database. Version management may produce unnecessary random writes. Compared to magnetic disks Flash storage offers fundamentally different IO characteristics, e.g. excellent random read, low random write performance and strong read/write asymmetry. Therefore the performance of snapshot isolation can be improved by minimizing the random writes. We propose a variant of snapshot isolation (called SI-CV) that collocates tuple versions created by a transaction in adjacent blocks and therefore minimizes random writes at the cost of random reads. Its performance, relative to the original algorithm, in overloaded systems under heavy transactional loads in TPC-C scenarios on Flash SSD storage increases significantly. At high loads that bring the original system into overload, the transactional throughput of SI-CV increases further, while maintaining response times that are multiple factors lower.