内存数据库并发控制算法的实验研究
作者:
作者简介:

赵泓尧(1997-),男,博士生,CCF学生会员,主要研究领域为分布式数据库系统,事务处理;
卢卫(1981-),男,博士,教授,博士生导师,CCF专业会员,主要研究领域为数据库基础理论,大数据系统研制,时空背景下的查询处理,云数据库系统和应用;
赵展浩(1995-),男,博士生,CCF学生会员,主要研究领域为分布式数据库系统,事务处理;
李海翔(1974-),男,硕士,腾讯首席架构师,CCF专业会员,主要研究领域为分布式计算,云数据库,事务处理,查询优化;
杨皖晴(1999-),女,硕士生,CCF学生会员,主要研究领域为分布式数据库系统,事务处理;
杜小勇(1963-),男,博士,教授,博士生导师,CCF会士,主要研究领域为智能信息检索,高性能数据库,非结构化数据管理.

通讯作者:

杜小勇,E-mail:duyong@ruc.edu.cn;卢卫,E-mail:lu-wei@ruc.edu.cn

基金项目:

国家重点研发计划(2020YFB2104100);国家自然科学基金(61972403,61732014);中央高校基本科研业务费专项资金(20XNLG22);中国人民大学-腾讯联合实验室联合项目基金


Experimental Study on Concurrency Control Algorithms in In-Memory Databases
Author:
  • 摘要
  • | |
  • 访问统计
  • |
  • 参考文献 [47]
  • |
  • 相似文献 [20]
  • | | |
  • 文章评论
    摘要:

    并发控制算法是数据库系统保证事务执行正确且高效的重要手段,一直是数据库工业界和学术界研究的核心问题之一.将并发控制算法的基本思想归纳为“先定序后检验”,并基于该思想对现有各类并发控制算法进行了重新描述和分类总结.基于在开源内存型分布式事务测试床3TS上的实际对比实验,系统性地探究了各类算法的优缺点和适用场景,为面向内存数据库的并发控制算法的后续研究提供参考.

    Abstract:

    The concurrency control algorithm is a key component to guarantee the correctness and efficiency of executing transactions. Thus far, substantial effort has been devoted to proposing new concurrency controls algorithms in both database industry and academia. This study abstracts a common paradigm of the state-of-the-art and summarizes the core idea of concurrency control algorithms as “ordering-and-verifying”. Then, the existing concurrency control algorithms are re-presented following the ordering-and-verifying paradigm. Based on extensive experiments under an open-source memory-based distributed transaction testbed called 3TS, it is systematically demonstrated the advantages and disadvantages of the mainstream state-of-the-art concurrency control algorithms. Finally, the preferable application scenario is summarized for each algorithm and some valuable references are provided for the follow-up research of concurrency control algorithms used in in-memory databases.

    参考文献
    [1] Wang S, Sa SX. Introduction to Database System. 5th ed., Beijing:Higher Education Press, 2014(in Chinese).
    [2] Gray J, Reuter A. Transaction Processing:Concepts and Techniques. San Francisco:Morgan Kaufmann Publishers Inc., 1992.
    [3] Guo ZH, Wu K, Yan C, Yu XY. Releasing locks as early as you can:Reducing contention of hotspots by violating two-phase locking. In:Proc. of the 2021 Int'l Conf. on Management of Data. New York:Association for Computing Machinery, 2021. 658-670.[doi:10.1145/3448016.3457294]
    [4] Gray J, Lorie RA, Putzolu GR, Traiger IL. Granularity of locks and degrees of consistency in a shared data base. In:Readings in Database Systems. 3rd ed., 1976. 365-394.
    [5] Bernstein P, Goodman N. Concurrency control in distributed database systems. ACM Computing Surveys, 1981, 13(2):185-221. [doi:10.1145/356842.356846]
    [6] Mahmoud HA, Arora V, Nawab F, Agrawal D, Abbadi A. MaaT:Effective and scalable coordination of distributed transactions in the cloud. Proc. of the VLDB Endowment, 2014, 7(5):329-340.
    [7] Kung HT, Robinson JT. On optimistic methods for concurrency control. ACM Trans. on Database Systems, 1981, 6(2):213-226. [doi:10.1145/319566.319567]
    [8] Yu XY, Xia Y, Pavlo A, Sanchez D, Rudolph L, Devadas S. Sundial:Harmonizing concurrency control and caching in a distributed OLTP database management system. Proc. of the VLDB Endowment, 2018, 11. 10):1289-1302.[doi:10.14778/3231751.3231763]
    [9] Agrawal R, Carey MJ, Livny M. Concurrency control performance modeling:Alternatives and implications. ACM Trans. on Database Systems, 1987, 12(4):609-654.[doi:10.1145/32204.32220]
    [10] Carey MJ, Livny M. Distributed concurrency control performance:A study of algorithms, distribution, and replication. In:Proc. of the 14th Int'l Conf. on Very Large Data Bases (VLDB '88). San Francisco:Morgan Kaufmann Publishers Inc., 13-25.
    [11] Huang JD, Stankovic JA, Ramamritham K, Towsley DF. Experimental evaluation of real-time optimistic concurrency control schemes. In:Proc. of the 17th Int'l Conf. on Very Large Data Bases (VLDB '91). San Francisco:Morgan Kaufmann Publishers Inc., 1991. 35-46.
    [12] Harding R, Van Aken D, Pavlo A, Stonebraker M. An evaluation of distributed concurrency control. Proc. of the VLDB Endowment, 2017, 10(5):553-564.[doi:10.14778/3055540.3055548]
    [13] Huang YH, Qian W, Kohler E, Liskov B, Shrira L. Opportunities for optimism in contended main-memory multicore transactions. Proc. of the VLDB Endowment, 2020, 13(5):629-642.
    [14] Takayuki T, Takashi H, Hideyuki K, Osamu T. An analysis of concurrency control protocols for in-memory databases with CCBench. Proc. of the VLDB Endowment, 2020, 13:3531-3544.[doi:10.14778/3424573.3424575]
    [15] Tu S, Zheng WT, Kohler E, Liskov B, Madden S. Speedy transactions in multicore in-memory databases. In:Proc. of the 24th ACM Symp. on Operating Systems Principles (SOSP 2013). New York:Association for Computing Machinery, 2013. 18-32.[doi: 10.1145/2517349.2522713]
    [16] Yu XY, Pavlo A, Sanchez D, Devadas S. TicToc:Time traveling optimistic concurrency control. In:Proc. of the 2016 Int'l Conf. on Management of Data (SIGMOD 2016). New York:Association for Computing Machinery, 2016. 1629-1642.[doi:10.1145/2882903.2882935]
    [17] Lim H, Kaminsky M, Andersen DG. Cicada:Dependably fast multi-core in-memory transactions. In:Proc. of the 2017 ACM Int'l Conf. on Management of Data (SIGMOD 2017). New York:Association for Computing Machinery, 2017. 21-35.[doi:10.1145/3035918.3064015]
    [18] 3TS. 2020. https://github.com/Tencent/3TS
    [19] Bernstein PA, Goodman N. Timestamp-based algorithms for concurrency control in distributed database systems. In:Proc. of the 6th Int'l Conf. on Very Large Data Bases-Vol.6(VLDB '80). VLDB Endowment, 1980. 285-300.
    [20] Berenson H, Bernstein P, Gray J, Melton J, O'Neil E, O'Neil P. A critique of ANSI SQL isolation levels. In:Proc. of the '95 ACM SIGMOD Int'l Conf. on Management of Data (SIGMOD '95). New York:Association for Computing Machinery, 1995. 1-10.[doi: 10.1145/223784.223785]
    [21] Thomson A, Diamond T, Weng SC, Ren K, Shao P, Abadi DJ. Calvin:Fast distributed transactions for partitioned database systems. In:Proc. of the 2012 ACM SIGMOD Int'l Conf. on Management of Data (SIGMOD 2012). New York:Association for Computing Machinery, 2012. 1-12.
    [22] Cowling J, Liskov B. Granola:Low-overhead distributed transaction coordination. In:Proc. of the 2012 USENIX Conf. on Annual Technical Conf. (USENIX ATC 2012). USENIX Association, 2012. 223-235.
    [23] Escriva R, Wong B, Sirer EG. Warp:Lightweight multi-key transactions for key-value stores. arXiv:abs/1509.07815, 2015.
    [24] Dragojević A, Narayanan D, Nightingale EB, Renzelmann M, Shamis A, Badam A, Castro M. No compromises:Distributed transactions with consistency, availability, and performance. In:Proc. of the 25th Symp. on Operating Systems Principles (SOSP 2015). New York:Association for Computing Machinery, 2015. 54-70.
    [25] Mu S, Cui Y, Zhang Y, Lloyd W, Li JY. Extracting more concurrency from distributed transactions. In:Proc. of the 11th USENIX Conf. on Operating Systems Design and Implementation (OSDI 2014). USENIX Association, 2014. 479-494.
    [26] Shute J, Vingralek R, Samwel B, Handy B, Whipkey C, Rollins E, Oancea M, Littlefield K, Menestrina D, Ellner S, Cieslewicz J, Rae I, Stancescu T, Apte H. F1:A distributed SQL database that scales. Proc. of the VLDB Endowment, 2013, 6(11):1068-1079. [doi:10.14778/2536222.2536232]
    [27] Wei XD, Shi JX, Chen YZ, Chen R, Chen HB. Fast in-memory transaction processing using RDMA and HTM. In:Proc. of the 25th Symp. on Operating Systems Principles (SOSP 2015). New York:Association for Computing Machinery, 2015, 87-104.[doi:10. 1145/2815400.2815419]
    [28] Zhang Y, Power R, Zhou SY, Sovran Y, Aguilera MK, Li JY. Transaction chains:Achieving serializability with low latency in geodistributed storage systems. In:Proc. of the 24th ACM Symp. on Operating Systems Principles (SOSP 2013). New York: Association for Computing Machinery, 2013. 276-291.
    [29] Zhang I, Sharma NK, Szekeres A, Krishnamurthy A, Ports DRK. Building consistent transactions with inconsistent replication. ACM Trans. on Computer Systems, 2018, 35(4):Article No.12.
    [30] Zhao ZH. Efficiently supporting adaptive multi-level serializability models in distributed database systems. In:Proc. of the 2021 Int'l Conf. on Management of Data. New York:Association for Computing Machinery, 2021. 2908-2910.[doi:10.1145/3448016. 3450579]
    [31] Han QL, Hao ZX. Real-time concurrency control protocol based on accessing temporal data. Journal of Software, 2007, 18(6): 1468-1476(in Chinese with English abstract). http://www.jos.org.cn/1000-9825/18/1468.htm[doi:10.1360/jos181468]
    [32] Ding BL, Kot L, Demers A, Gehrke J. Centiman:Elastic, high performance optimistic concurrency control by watermarking. In: Proc. of the 6th ACM Symp. on Cloud Computing (SoCC 2015). New York:Association for Computing Machinery, 2015. 262-275. [doi:10.1145/2806777.2806837]
    [33] Wu YJ, Arulraj J, Lin JX, Xian R, Pavlo A. An empirical evaluation of in-memory multi-version concurrency control. Proc. of the VLDB Endowment, 2017, 10(7):781-792.[doi:10.14778/3067421.3067427]
    [34] Yabandeh M, Ferro DG. A critique of snapshot isolation. In:Proc. of the 7th ACM European Conf. on Computer Systems (EuroSys 2012). New York:Association for Computing Machinery, 2012. 155-168.
    [35] Reed DP. Naming and synchronization in a decentralized computer system[Ph.D. Thesis]. Cambridge:Massachusetts Institute of Technology, 1978.
    [36] Fekete A, Liarokapis D, O'Neil E, O'Neil P, Shasha D. Making snapshot isolation serializable. ACM Trans. on Database Systems, 2005, 30(2):492-528.[doi:10.1145/1071610.1071615]
    [37] Cahill MJ, Röhm U, Fekete AD. Serializable isolation for snapshot databases. ACM Trans. on Database Systems, 2009, 34(4): Article No.20.[doi:10.1145/1620585.1620587]
    [38] Adya A, Liskov B. Weak consistency:A generalized theory and optimistic implementations for distributed transactions[Ph.D. Thesis]. Massachusetts Institute of Technology, 1999.
    [39] Rosenkrantz DJ, Stearns RE, Lewis PM. System level concurrency control for distributed database systems. ACM Trans. on Database Systems, 1978, 3(2):178-198.[doi:10.1145/320251.320260]
    [40] Härder T. Observations on optimistic concurrency control schemes. Information Systems, 1984, 9(2):111-120.
    [41] Postgres. 2021. https://www.postgresql.org/
    [42] Oracle. 2021. https://www.oracle.com/index.html
    [43] Cooper BF, Silberstein A, Tam E, Ramakrishnan R, Sears R. Benchmarking cloud serving systems with YCSB. In:Proc. of the 1st ACM Symp. on Cloud Computing (SoCC 2010). New York:Association for Computing Machinery, 2010.143-154.[doi:10.1145/1807128.1807152]
    [44] TPC-C. 2021. http://www.tpc.org/tpcc/
    附中文参考文献:
    [1] 王珊, 萨师煊. 数据库系统概论. 第5 版, 北京:高等教育出版社, 2014.
    [31] 韩启龙, 郝忠孝. 基于数据时态特性的实时事务并发控制. 软件学报, 2007, 18(6):1468-1476. http://www.jos.org.cn/1000-9825/18/1468.htm[doi:10.1360/jos181468]
    引证文献
    网友评论
    网友评论
    分享到微博
    发 布
引用本文

赵泓尧,赵展浩,杨皖晴,卢卫,李海翔,杜小勇.内存数据库并发控制算法的实验研究.软件学报,2022,33(3):867-890

复制
分享
文章指标
  • 点击次数:2418
  • 下载次数: 6027
  • HTML阅读次数: 4624
  • 引用次数: 0
历史
  • 收稿日期:2021-06-30
  • 最后修改日期:2021-07-31
  • 在线发布日期: 2021-10-21
  • 出版日期: 2022-03-06
文章二维码
您是第19700992位访问者
版权所有:中国科学院软件研究所 京ICP备05046678号-3
地址:北京市海淀区中关村南四街4号,邮政编码:100190
电话:010-62562563 传真:010-62562533 Email:jos@iscas.ac.cn
技术支持:北京勤云科技发展有限公司

京公网安备 11040202500063号