
软件学报 ISSN 1000-9825, CODEN RUXUEW E-mail: jos@iscas.ac.cn
Journal of Software, [doi: 10.13328/j.cnki.jos.007281] http://www.jos.org.cn
©中国科学院软件研究所版权所有. Tel: +86-10-62562563
基于确定性并发控制的云原生多写技术
∗
洪殷昊
1,2
,
赵泓尧
1,2
,
王乙霖
1,2
,
史心悦
1,2
,
卢卫
1,2
,
杨尚
3
,
杜胜
3
1
(数据工程与知识工程教育部重点实验室(中国人民大学),北京 100872)
2
(中国人民大学 信息学院, 北京 100872)
3
(北京人大金仓信息技术有限公司, 北京 100872)
通讯作者: 卢卫, E-mail: lu-wei@ruc.edu.cn
摘 要: 云原生数据库具有开箱即用、弹性伸缩、按需付费等优势, 是目前学术界和工业界的研究热点. 当前,
云原生数据库仅支持"一写多读", 即读写事务集中在单一的读写节点, 只读事务分散到多个只读节点. 将读写事
务集中在单一的读写节点, 制约了系统的读写事务处理能力, 难以满足读写密集型业务需求. 为此, 本文提出了
D3C(deterministic concurrency control cloud database)架构, 通过设计基于确定性并发控制的云原生数据库事务处
理机制来突破一写多读的限制, 支持多个读写节点并发执行读写事务. 其中 D3C 将事务分拆为子事务, 并根据预
先确定的全局顺序在各节点独立执行这些子事务, 以满足多个读写节点上事务执行的可串行化. 此外本文提出了
基于多版本机制的异步批量数据持久化等机制保证事务处理的性能, 并提出基于一致性点的故障恢复机制实现高
可用. 实验表明, D3C 在满足云原生数据库关键需求的同时, 在写密集场景下能达到一写多读性能的 5.1 倍.
关键词: 云原生数据库;确定性并发控制;事务处理
中图法分类号: TP311
中文引用格式: 洪殷昊,赵泓尧,王乙霖,史心悦,卢卫,杨尚,杜胜.基于确定性并发控制的云原生多写技术.软件学报.
http://www.jos.org.cn/1000-9825/7281.htm
英文引用格式: Hong YH, Zhao HY, Wang YL, Shi XY, Lu W, Yang S, Du S. Deterministic Concurrency Control based Multi-Write
Transaction Processing over Cloud-native Databases. Ruan Jian Xue Bao/Journal of Software (in Chinese). http://www.jos.
org.cn/1000-9825/7281.htm
Deterministic Concurrency Control based Multi-Write Transaction Processing over
Cloud-native Databases
HONG Yin-Hao
1,2
, ZHAO Hong-Ya o
1,2
, WANG Yin-Lin
1,2
, SHI Xin-Yu e
1,2
, LU Wei
1,2
, YANG Shang
3
,
DU Sheng
3
1
(Key Laboratory of Data Engineering and Knowledge Engineering (Renmin University of China), Ministry of Education, Beijing 100872,
China)
2
(School of Information, Renmin University of China, Beijing 100872, China)
3
(Beijing Kingbase Technology Inc., Beijing 100872, China)
Abstract: Cloud-native databases have emerged as a hot topic in the field of database development in the era of cloud computing, thanks
to their advantages such as out-of-the-box functionality, elastic scalability, and pay-as-you-go pricing. However, mainstream cloud-native
databases only support a single master node to execute write transactions. This limitation hampers the system's ability to handle
write-intensive workloads, making it difficult to meet the demands of businesses with high write requirements. To address this issue, this
paper proposes the D3C (deterministic concurrency control cloud database) architecture, which achieves cloud-native multi-writer
capabilities by designing a transaction processing mechanism based on deterministic concurrency control. D3C splits transactions into
sub-transactions and independently executes them on various nodes according to a pre-defined global order, ensuring serializable isolation
for transaction execution on multiple read-write nodes. Additionally, this paper introduces mechanisms such as asynchronous batch data
∗ 基金项目:国家自然科学基金(61972403, 61732014);
收稿时间:
2024-05-27; 修改时间: 2024-07-16, 2024-08-19; 采用时间: 2024-08-29; jos 在线出版时间: 2024-09-13
评论