Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Quantifying isolation anomalies

Published: 01 August 2009 Publication History

Abstract

Choosing a weak isolation level such as Read Committed is understood as a trade-off, where less isolation means that higher performance is gained but there is an increased possibility that data integrity will be lost. Previously, one side of this trade-off has been carefully studied quantitatively -- there are well-known metrics for performance such as transactions per minute, standardized benchmarks that measure these in a controlled way, and analytic models that can predict how performance is influenced by system parameters like multiprogramming level. This paper contributes to quantifying the other aspect of the trade-off. We define a novel microbenchmark that measures how rapidly integrity violations are produced at different isolation levels, for a simple set of transactions. We explore how this rate is impacted by configuration factors such as multiprogramming level, or contention frequency. For the isolation levels in multi-version platforms (Snapshot Isolation and the multiversion variant of Read Committed), we offer a simple probabilistic model that predicts the rate of integrity violations in our microbenchmark from configuration parameters. We validate the predictive model against measurements from the microbenchmark. The model identifies a region of the configuration space where a surprising inversion occurs: for these parameter settings, more integrity violations happen with Snapshot Isolation than with multi-version Read Committed, even though the latter is considered a lower isolation level.

References

[1]
R. Agrawal, M. J. Carey, and M. Livny. Concurrency control performance modeling: alternatives and implications. ACM Transactions on Database Systems, 12(4):609--654, 1987.
[2]
Anon, et al. A measure of transaction processing power. Datamation, 1985.
[3]
H. Berenson, P. Bernstein, J. Gray, J. Melton, E. O'Neil, and P. O'Neil. A critique of ANSI SQL isolation levels. In Proceedings of ACM SIGMOD International Conference on Management of Data, pages 1--10. ACM Press, June 1995.
[4]
M. J. Cahill, U. Röhm, and A. D. Fekete. Serializable isolation for snapshot databases. In SIGMOD '08: Proceedings of the 2008 ACM SIGMOD international conference on Management of data, pages 729--738, New York, NY, USA, 2008. ACM.
[5]
M. J. Carey and W. A. Muhanna. The performance of multiversion concurrency control algorithms. ACM Transactions on Computer Systems, 4(4):338--378, 1986.
[6]
M. J. Carey and M. Stonebraker. The performance of concurrency control algorithms for database management systems. In U. Dayal, G. Schlageter, and L. H. Seng, editors, Tenth International Conference on Very Large Data Bases (VLDB'84), pages 107--118, 1984.
[7]
S. Elnikety, S. Dropsho, E. Cecchet, and W. Zwaenepoel. Predicting replicated database performance from standalone database profiling. In Proc EuroSys'09, pages 303--316, 2009.
[8]
K. P. Eswaran, J. Gray, R. A. Lorie, and I. L. Traiger. The notions of consistency and predicate locks in a database system. Commun. ACM, 19(11):624--633, 1976.
[9]
A. Fekete, D. Liarokapis, E. O'Neil, P. O'Neil, and D. Shasha. Making snapshot isolation serializable. ACM Transactions on Database Systems, 30(2):492--528, 2005.
[10]
J. Gray. The Benchmark Handbook (2nd ed). Morgan Kaufmann, 1993.
[11]
J. Gray, P. Helland, P. E. O'Neil, and D. Shasha. The dangers of replication and a solution. In H. V. Jagadish and I. S. Mumick, editors, Proceedings of ACM SIGMOD International Conference on Management of Data, pages 173--182. ACM Press, 1996.
[12]
J. Gray, P. Homan, R. Obermarck, and H. Korth. A strawman analysis of the probability of waiting and deadlock in a database system. Technical Report RJ3066, IBM San Jose Research Laboratory, February 1981.
[13]
J. Gray and A. Reuter. Transaction Processing: Concepts and Techniques. Morgan Kaufmann, 1993.
[14]
J. N. Gray, R. A. Lorie, G. R. Putzolu, and I. L. Traiger. Granularity of locks and degrees of consistency in a shared data base. In G. M. Nijssen, editor, Modelling in Data Base Management Systems, pages 365--394. North Holland Publishing Company, 1976.
[15]
J. M. Hellerstein, M. Stonebraker, and J. R. Hamilton. Architecture of a database system. Foundations and Trends in Databases, 1(2):141--259, 2007.
[16]
K. Jacobs, R. Bamford, G. Doherty, K. Haas, M. Holt, F. Putzolu, and B. Quigley. Concurrency control, transaction isolation and serializability in SQL92 and Oracle7. Oracle White Paper, Part No A33745, 1995.
[17]
S. Jorwekar, A. Fekete, K. Ramamritham, and S. Sudarshan. Automating the detection of snapshot isolation anomalies. In VLDB '07: Proceedings of the 33rd international conference on Very Large Data Bases, pages 1263--1274. VLDB Endowment, 2007.
[18]
D. B. Lomet. Key range locking strategies for improved concurrency. In VLDB '93: Proceedings of the 19th International Conference on Very Large Data Bases, pages 655--664, San Francisco, CA, USA, 1993. Morgan Kaufmann Publishers Inc.
[19]
C. Mohan. ARIES/KVL: a key-value locking method for concurrency control of multiaction transactions operating on b-tree indexes. In Proceedings of international conference on Very Large Databases (VLDB'90), pages 392--405, San Francisco, CA, USA, 1990. Morgan Kaufmann Publishers Inc.
[20]
C. Mohan and F. Levine. ARIES/IM: an efficient and high concurrency index management method using write-ahead logging. In Proceedings of ACM SIGMOD international conference on Management of Data (SIGMOD'92), pages 371--380, New York, NY, USA, 1992. ACM.
[21]
D. Shasha and P. Bonnet. Database tuning: principles, experiments, and troubleshooting techniques. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA, 2003.
[22]
A. Thomasian. Concurrency control: Methods, performance, and analysis. ACM Comput. Surv., 30(1):70--119, 1998.
[23]
Transaction Processing Performance Council. TPC-E Benchmark Specification, 2007.
[24]
G. Weikum and G. Vossen. Transactional Information Systems: Theory, Algorithms and the Practice of Concurrency Control and Recovery. Morgan Kaufmann, San Francisco, California, 2002.

Cited By

View all
  • (2023)Viper: A Fast Snapshot Isolation CheckerProceedings of the Eighteenth European Conference on Computer Systems10.1145/3552326.3567492(654-671)Online publication date: 8-May-2023
  • (2022)Remus: Efficient Live Migration for Distributed Databases with Snapshot IsolationProceedings of the 2022 International Conference on Management of Data10.1145/3514221.3526047(2232-2245)Online publication date: 10-Jun-2022
  • (2021)Robustness against read committed for transaction templatesProceedings of the VLDB Endowment10.14778/3476249.347626814:11(2141-2153)Online publication date: 1-Jul-2021
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Proceedings of the VLDB Endowment
Proceedings of the VLDB Endowment  Volume 2, Issue 1
August 2009
1293 pages

Publisher

VLDB Endowment

Publication History

Published: 01 August 2009
Published in PVLDB Volume 2, Issue 1

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)11
  • Downloads (Last 6 weeks)1
Reflects downloads up to 13 Sep 2024

Other Metrics

Citations

Cited By

View all
  • (2023)Viper: A Fast Snapshot Isolation CheckerProceedings of the Eighteenth European Conference on Computer Systems10.1145/3552326.3567492(654-671)Online publication date: 8-May-2023
  • (2022)Remus: Efficient Live Migration for Distributed Databases with Snapshot IsolationProceedings of the 2022 International Conference on Management of Data10.1145/3514221.3526047(2232-2245)Online publication date: 10-Jun-2022
  • (2021)Robustness against read committed for transaction templatesProceedings of the VLDB Endowment10.14778/3476249.347626814:11(2141-2153)Online publication date: 1-Jul-2021
  • (2020)COBRAProceedings of the 14th USENIX Conference on Operating Systems Design and Implementation10.5555/3488766.3488770(63-80)Online publication date: 4-Nov-2020
  • (2020)IsoDiffProceedings of the VLDB Endowment10.14778/3407790.340786013:12(2773-2786)Online publication date: 1-Jul-2020
  • (2019)Performance in the spotlightProceedings of the VLDB Endowment10.14778/3352063.335214412:12(2287-2289)Online publication date: 1-Aug-2019
  • (2018)Beyond macrobenchmarksProceedings of the VLDB Endowment10.14778/3297753.329775912:4(390-403)Online publication date: 1-Dec-2018
  • (2017)Alone together: compositional reasoning and inference for weak isolationProceedings of the ACM on Programming Languages10.1145/31581152:POPL(1-34)Online publication date: 27-Dec-2017
  • (2015)Feral Concurrency ControlProceedings of the 2015 ACM SIGMOD International Conference on Management of Data10.1145/2723372.2737784(1327-1342)Online publication date: 27-May-2015
  • (2013)Predicting transaction quality for balanced data consistency and performanceProceedings of the 18th international doctoral symposium on Components and architecture10.1145/2465498.2465505(13-18)Online publication date: 17-Jun-2013
  • Show More Cited By

View Options

Get Access

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media