Interactive Transaction Processing for In-Memory Database System

  • Tao Zhu
  • Donghui Wang
  • Huiqi HuEmail author
  • Weining Qian
  • Xiaoling Wang
  • Aoying Zhou
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10828)


In-memory transaction processing has gained fast development in recent years. Previous works usually assume the one-shot transaction model, where transactions are run as stored procedures. Though many systems have shown impressive throughputs in handling one-shot transactions, it is hard for developers to debug and maintain stored procedures. According to a recent survey, most applications still prefer to operate the database using the JDBC/ODBC interface. Upon realizing this, the work targets on the problem of interactive transaction processing for in-memory database system. Our key contributions are: (1) we address several important design considerations for supporting interaction transaction processing; (2) a coroutine-based execution engine is proposed to handle different kinds of blocking efficiently and improve the CPU usage; (3) a lightweight and latch-free lock manager is designed to schedule transaction conflicts without introducing many overhead; (4) experiments on both the TPC-C and a micro benchmark show that our method achieves better performance than existing solutions.


Transaction Concurrency control Network interaction 



This is work is partially supported by National High-tech R&D Program(863 Program) under grant number 2015AA015307, National Science Foundation of China under grant numbers 61702189, 61432006 and 61672232, and Youth Science and Technology - “Yang Fan” Program of Shanghai under grant number 17YF1427800.


  1. 1.
    Diaconu, C., Freedman, C., Ismert, E., Larson, P.A., et al.: Hekaton: SQL server’s memory-optimized OLTP engine. In: SIGMOD, pp. 1243–1254 (2013)Google Scholar
  2. 2.
    Gray, J.: Transaction Processing: Concepts and Techniques. Elsevier, Amsterdam (1992)zbMATHGoogle Scholar
  3. 3.
    Harizopoulos, S., Abadi, D.J., Madden, S., Stonebraker, M.: OLTP through the looking glass, and what we found there. In: SIGMOD, pp. 981–992. ACM (2008)Google Scholar
  4. 4.
    Johnson, R., Pandis, I., Ailamaki, A.: Improving OLTP scalability using speculative lock inheritance. VLDB 2(1), 479–489 (2009)Google Scholar
  5. 5.
    Jung, H., Han, H., Fekete, A., Heiser, G., Yeom, H.Y.: A scalable lock manager for multicores. TODS 39(4), 29 (2014)MathSciNetCrossRefGoogle Scholar
  6. 6.
    Knuth, D.E.: The Art of Computer Programming: Fundamental Algorithms, vol. 1. Addison Wesley Longman Publishing Co., Inc., Boston (1997)zbMATHGoogle Scholar
  7. 7.
    Kung, H.T., Robinson, J.T.: On optimistic methods for concurrency control. TODS 6(2), 213–226 (1981)CrossRefGoogle Scholar
  8. 8.
    Larson, P.Å., Blanas, S., Diaconu, C., Freedman, C., Patel, J.M., Zwilling, M.: High-performance concurrency control mechanisms for main-memory databases. VLDB 5(4), 298–309 (2011)Google Scholar
  9. 9.
    Pandis, I., Johnson, R., Hardavellas, N., Ailamaki, A.: Data-oriented transaction execution. VLDB 3(1–2), 928–939 (2010)Google Scholar
  10. 10.
    Pavlo, A.: What are we doing with our lives?: nobody cares about our concurrency control research. In: SIGMOD, p. 3. ACM (2017)Google Scholar
  11. 11.
    Ren, K., Thomson, A., Abadi, D.J.: Lightweight locking for main memory database systems. VLDB 6, 145–156 (2012)Google Scholar
  12. 12.
    Stonebraker, M., Madden, S., Abadi, D.J., et al.: The end of an architectural era: (it’s time for a complete rewrite). In: VLDB, pp. 1150–1160 (2007)Google Scholar
  13. 13.
    Thomson, A., Abadi, D.J.: The case for determinism in database systems. VLDB 3(1–2), 70–80 (2010)Google Scholar
  14. 14.
    Thomson, A., Diamond, T., Weng, S.C., Ren, K., et al.: Calvin: fast distributed transactions for partitioned database systems. In: SIGMOD, pp. 1–12 (2012)Google Scholar
  15. 15.
    Tu, S., Zheng, W., Kohler, E., Liskov, B., Madden, S.: Speedy transactions in multicore in-memory databases. In: SOSP, pp. 18–32 (2013)Google Scholar
  16. 16.
    Wang, T., Kimura, H.: Mostly-optimistic concurrency control for highly contended dynamic workloads on a thousand cores. VLDB 10(2), 49–60 (2016)Google Scholar
  17. 17.
    Wang, Z., Mu, S., Cui, Y., Yi, H., Chen, H., Li, J.: Scaling multicore databases via constrained parallel execution. In: SIGMOD, pp. 1643–1658. ACM (2016)Google Scholar
  18. 18.
    Wu, Y., Chan, C.Y., Tan, K.L.: Transaction healing: scaling optimistic concurrency control on multicores. In: SIGMOD, pp. 1689–1704. ACM (2016)Google Scholar

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  • Tao Zhu
    • 1
  • Donghui Wang
    • 1
  • Huiqi Hu
    • 1
    Email author
  • Weining Qian
    • 1
  • Xiaoling Wang
    • 1
  • Aoying Zhou
    • 1
  1. 1.East China Normal UniversityShanghaiChina

Personalised recommendations