面向NewSQL数据库数据协同持久化的研究
作者机构:中国科学技术大学计算机科学与技术学院 安徽省高性能计算重点实验室
出 版 物:《计算机科学》 (Computer Science)
年 卷 期:2024年
学科分类:12[管理学] 1201[管理学-管理科学与工程(可授管理学、工学学位)]
基 金:国家自然科学基金面上项目(NSFC 62172382)资助
主 题:分布式数据库 并发控制 数据持久化 数据一致性 高数据竞争负载
摘 要:现代NewSQL数据库为了提供数据的高可用性,通常会为数据提供多个副本,以便在某个副本不可用的时候,可以从其它的副本中获取数据。而在数据多副本的情况下,又需要考虑副本间的数据一致性问题,即在某一时刻不同客户端读取某个数据时得到的结果应该是相同的,因此引入了事务处理机制。考虑一个包含有多个写操作的交互式事务处理过程中,由于数据存在多个副本,因此每个写入操作需要对所有的主备副本进行写入操作。然而主备副本通常分散在不同的机器上,因此会引入写远端副本的时延,其最终将会增大整个事务的处理时延。针对该问题提出了数据协同持久化的方案,其主要思想是让客户端在本地缓存事务的写操作日志,在最终提交事务的时候,客户端首先将事务中的写操作日志进行持久化,并将该日志发送给事务的协调者节点,让协调者进行日志数据的分发处理,从而达到两者协同持久化事务数据的目的。实验结果表明,相较于同步持久化方案,协同持久化方案不仅能降低交互式事务处理的时延,还能提高约38%左右的系统极限吞吐率。