ISSN 1000-1239 CN 11-1777/TP

计算机研究与发展 ›› 2022, Vol. 59 ›› Issue (4): 721-736.doi: 10.7544/issn1000-1239.20210231

• 体系结构 •    下一篇



  1. (清华大学计算机科学与技术系 北京 100084) (北京信息科学与技术国家研究中心(清华大学) 北京 100084) (
  • 出版日期: 2022-04-01
  • 基金资助: 

Survey on Concurrency Control Protocols of In-Memory Transactions

Jiang Tianyang, Zhang Guangyan, Li Zhiyue   

  1. (Department of Computer Science and Technology, Tsinghua University, Beijing 100084) (Beijing National Research Center for Information Science and Technology (Tsinghua University), Beijing 100084)
  • Online: 2022-04-01
  • Supported by: 
    This work was supported by the National Natural Science Foundation of China (62025203,61672315) and the National Key Research and Development Program of China (2018YFB0203902).

摘要: 事务为数据库等系统的上层应用提供了强大的保证.NoSQL数据库通过弱化对事务的支持来获得更高的扩展性,却难以满足OLTP等应用的事务性需求.之后提出的NewSQL数据库架构回归了高一致性的事务支持,并兼顾了海量数据的高效管理.因此,NewSQL数据库逐步将事务执行所需的数据从硬盘迁移到内存中以提升事务执行的效率.但是,已有内存事务的并发控制协议与新兴的存储、网络设备并不适配.从处理策略、版本控制、冲突解决3个维度对近10年来的内存事务中并发控制协议进行了分类阐述,进而从性能、扩展性、持久性3个方面比较了有代表性的并发控制协议.之后总结了4个改进内存事务并发控制协议的技术思路:消除事务扩展瓶颈,利用新硬件加速事务处理,降低事务中止概率,高效保证事务持久性.最后指出了内存事务并发控制协议的未来研究方向.

关键词: 内存事务, 并发控制, 分布式系统, 远程直接内存访问, 持久性内存

Abstract: Transactions provide strong guarantees for the upper-level applications based on databases and other systems. NoSQL databases obtain higher scalability by weakening the support for transactions, but it is difficult to meet the transactional requirements of applications such as OLTP. To retrieve the support for highly consistent transactions, the NewSQL database architecture proposed later takes into account the efficient management of massive data. NewSQL databases therefore migrate data accessed by transactions from disk to memory to accelerate transaction processing. However, existing concurrency control protocols of in-memory transactional systems are challenged by the incompatibility with emerging storage and network technology. We categorized the concurrency control protocols of in-memory transactions in the past ten years from the three dimensions of processing strategy, version control, and conflict resolution. Subsequently, we offer detailed comparisons of typical concurrency control protocols from the three aspects of performance, scalability, and durability. Then four technical solutions are summarized to improve concurrency control protocols of in-memory transactions including eliminating the bottleneck of scalability, accelerating transaction processing with emerging hardware, reducing the probability of transaction aborts and ensuring the durability of in-memory transactions efficiently. Finally, we point out the future research direction of concurrency control protocols of in-memory transactions.

Key words: in-memory transaction, concurrency control, distributed system, remote direct memory access, persistent memory