Skip to main content

Advertisement

Log in

Timestamp reassignment: taming transaction abort for serializable snapshot isolation

  • Research Article
  • Published:
Frontiers of Computer Science Aims and scope Submit manuscript

Abstract

Serializable snapshot isolation (SSI) is a promising technique to exploit parallelism for multi-core databases. However, SSI suffers from excessive transaction aborts. Existing remedies have three drawbacks: 1) tracking prohibitively transitive dependencies; 2) aborting on every write-write conflict; and 3) requiring manual annotation on transaction programs.

In this paper, we propose to suppress transaction aborts by reassigning timestamps. We combine static analysis with augmented query plan. In this way, we save both aborts caused by read-write and write-write conflicts, without tracking transitive dependency and annotating transaction programs. As such, our approach does not exhibit drawbacks of existing methods. Extensive experiments demonstrate the effectiveness and practicality of our approach.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Esmaeilzadeh H, Belm E, Amant R S, Sanharalingam K, Burger D. Power challenges may end the multicore era. Communications of ACM, 2013, 56(2): 93–102

    Article  Google Scholar 

  2. Horikawa T. Latch–free data structures for DBMS: design, implementation, and evaluation. In: Proceedings of the 2013 ACM SIGMOD International Conference on Management of Data. 2013, 409–420

    Chapter  Google Scholar 

  3. Ports D R K, Grittner K. Serializable snapshot isolation in PostgreSQL. Proceedings of the VLDB Endowment, 2012, 5(12): 1850–1861

    Article  Google Scholar 

  4. Cahill M J, Röhm U, Fekete A D. Serializable isolation for snapshot databases. ACM Transactions on Database Systems, 2009, 34(4): 20

    Article  Google Scholar 

  5. Revilak S, O’Neil P, O’Neil, E. Precisely serializable snapshot isolation (PSSI). In: Proceedings of the 27th IEEE International Conference on Data Engineering. 2011, 482–493

    Google Scholar 

  6. Berenson H, Bernstein P, Gray J, Melton J, O’Neil E, O’Neil P. A critique of ANSI SQL isolation levels. In: Proceedings of the 1995 ACM SIGMOD International Conference on Management of Data. 1995, 1–10

    Google Scholar 

  7. Adya A. Weak consistency: a generalized theory and optimistic implementations for distributed transactions. Massachusetts Institute of Technology, 1999

    Google Scholar 

  8. Fekete A D, Liarokapis D, O’Neil E, O’Neil P, Shasha D. Making snapshot isolation serializable. ACM Transactions on Database Systems, 2005, 20(2): 492–528

    Article  Google Scholar 

  9. Cahill M J, Röhm U, Fekete A D. Serializable isolation for snapshot databases. In: Proceedings of the 2008 ACM SIGMOD International Conference on Management of Data. 2008, 729–738

    Chapter  Google Scholar 

  10. Finkelstein S. Common expression analysis in database applications. In: Proceedings of the 1982 ACM SIGMOD International Conference on Management of Data. 1982, 235–245

    Chapter  Google Scholar 

  11. Sellis T K. Multiple–query optimization. ACM Transactions on Database Systems, 1988, 13(1): 23–52

    Article  Google Scholar 

  12. Harizopoulos S, Shkapenyuk V, Ailamaki A. QPipe: a simultaneously pipelined relational query engine. In: Proceedings of the 2005 ACM SIGMOD International Conference on Management of Data. 2005, 383–394

    Chapter  Google Scholar 

  13. Candea G, Polyzotis N, Vingralek R. A scalable, predictable join operator for highly concurrent data warehouses. Proceedings of the VLDB Endowment, 2009, 2(1): 277–288

    Article  Google Scholar 

  14. Arumugam S, Dobra A, Jermaine C M, Pansare N, Perez L. The DataPath system: a data–centric analytic processing engine for large data warehouses. In: Proceedings of the 2010 ACM SIGMOD International Conference on Management of Data. 2010, 519–530

    Chapter  Google Scholar 

  15. Giannikis G, Alonso G, Kossmann D. SharedDB: killing one thousand queries with one stone. Proceedings of the VLDB Endowment, 2012, 5(6): 526–537

    Article  Google Scholar 

  16. Chavan M, Guravannavar R, Ramachandra K, Sudarshan S. DBridge: a program rewrite tool for set–oriented query execution. In: Proceedings of the 27th IEEE International Conference on Data Engineering. 2011, 1284–1287

    Google Scholar 

  17. Guravannavar R, Sudarshan S. Rewriting procedures for batched bindings. Proceedings of the VLDB Endowment, 2008, 1(1): 1107–1123

    Article  Google Scholar 

  18. Cheung A, Madden S, Solar–Lezama A. Sloth: being lazy is a virtue (when issuing database queries). In: Proceedings of the 2014 ACM SIGMOD International Conference on Management of Data. 2014, 931–942

    Google Scholar 

  19. Cheung A, Madden S, Arden, O, Myers A C. Automatic partitioning of database applications. Proceedings of the VLDB Endowment, 2012, 5(11): 1471–1482

    Article  Google Scholar 

  20. Shasha D, Llirbat F, Simon E, Valduriez P. Transaction chopping: algorithms and performance studies. ACM Transactions on Database Systems, 1995, 20(3): 325–363

    Article  Google Scholar 

  21. Bernstein P A, Shipman D W, Rothnie J B. Concurrency control in a system for distributed databases (SDD–1). ACM Transactions on Database Systems, 1980, 5(1): 18–51

    Article  Google Scholar 

  22. Agrawal D, El A A, Jeffers R, Lin L J. Ordered shared locks for realtime databases. The VLDB Journal, 1995, 4(1): 87–126

    Article  Google Scholar 

  23. Xie C, Su C Z, Littley C, Alivisi L, Kapritsos M, Wang Y. Highperformance ACID via modular concurrency control. In: Proceedings of the 25th Symposium on Operating Systems Principles. 2015, 279–294

    Chapter  Google Scholar 

  24. Yan C, Cheung A. Leveraging lock contention to improve OLTP application performance. Proceedings of the VLDB Endowment, 2016, 9(5): 444–455

    Article  Google Scholar 

  25. Faleiro J M, Thomson A, Abadi D J. Lazy evaluation of transactions in database systems. In: Proceedings of the 2014 ACM SIGMOD International Conference on Management of Data. 2014, 15–26

    Google Scholar 

  26. Roy S, Kot L, Bender G, Ding B L, Hojjat H, Koch C, Foster N, Gehrke J. The homeostasis protocol: avoiding transaction coordination through program analysis. In: Proceedings of the 2015 ACM SIGMOD International Conference on Management of Data. 2015, 1311–1326

    Google Scholar 

  27. Bailis P, Fekete A, Franklin M J, Ghodsi A, Hellerstein J M, Stoica I. Coordination avoidance in database systems. Proceedings of the VLDB Endowment, 2014, 8(3): 185–196

    Article  Google Scholar 

  28. Wang Z G, Mu S, Cui Y, Yi H, Chen H B, Li J Y. Scaling multicore databases via constrained parallel execution. In: Proceedings of the 2016 International Conference on Management of Data. 2016, 1643–1658

    Google Scholar 

  29. Stonebraker M, Madden S, Abadi D J, Harizopoulos S, Hachem N, Helland P. The end of an architectural era: (it’s time for a complete rewrite). In: Proceedings of the 33rd International Conference on Very Large Data Bases. 2007, 1150–1160

    Google Scholar 

  30. Faleiro JM, Abadi D J, Hellerstein JM. High performance transactions via early write visibility. Proceedings of the VLDB Endowment, 2017, 10(5): 613–624

    Article  Google Scholar 

  31. Alomari M, Cahill M, Fekete A, Rohm U. The cost of serializability on platforms that use snapshot isolation. In: Proceedings of the 24th IEEE International Conference on Data Engineering. 2008, 576–585

    Google Scholar 

  32. Sirin U, Tözün P, Porobic D, Ailamaki A. Micro–architectural analysis of in–memory OLTP. In: Proceedings of the 2016 International Conference on Management of Data. 2016, 387–402

    Google Scholar 

Download references

Acknowledgements

This work was partially supported by the National Key R&D Program of China (2018YFB1004401), and the National Natural Science Foundation of China Key Project (Grant No. 61732014).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Xiao Zhang.

Additional information

Ningnan Zhou is currently a PhD student at the School of Information, Renmin University of China. He received his BE degree in Computer Science from Renmin University of China in 2012. His research interests include database system and data mining.

Xiao Zhang is an associated professor at the School of Information, Renmin University of China. He received his PhD degree from Institute of Computing Technology, Chinese Academy of Science, China. His research interests include database system and big data management.

Shan Wang is a professor at the School of Information, Renmin University of China. Her research interests include RDBMS (XDB, KingbaseES), parallel and distributed DBMS(PBase) and main memory DBMS, data warehouse, DB-IR and big data management. She has extensive publications including SIGMOD, VLDB, ICDE, SIGKDD, TKDE and CACM. She was the co-chair of VLDB’02 and honorary chair of SIGMOD’07.

Electronic supplementary material

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Zhou, N., Zhang, X. & Wang, S. Timestamp reassignment: taming transaction abort for serializable snapshot isolation. Front. Comput. Sci. 13, 1282–1295 (2019). https://doi.org/10.1007/s11704-018-7018-z

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11704-018-7018-z

Keywords