关键词:
共享缓冲区
分布式数据库系统
RDMA
持久内存
事务并发控制
摘要:
随着互联网技术和大数据的飞速发展,传统的集中式数据库系统已经难以满足高并发处理负载的需求。于是,出现了不同架构的分布式数据库系统用以解决高并发负载的需求。共享缓冲区的分布式数据库支持多节点写入,多台节点共享一份存储,缓冲区也是共享的。相比于无共享架构的数据库来说,由于需要共享缓冲区,所以网络的开销是较高。针对以上问题,为了有效解决大数据背景下高并发负载问题和低延迟需求,我们设计与实现了一种基于远程内存访问(RDMA)的共享缓冲区分布式数据库,充分发挥RDMA技术在网络传输中低延迟的特点,优化共享缓冲区内的数据传输效率。还利用了新型存储硬件持久化内存(PM)技术,提高了全局事务管理器(GTM)中提交日志信息的持久化效率。本文设计的数据库系统能够支持事务的特性,提出了一整套事务处理过程中遇到的冲突解决方案。此外,共享缓冲区数据库具有高可扩展性,能够横向扩展缓冲区,避免磁盘IO的发生。本文的主要贡献可以概括为以下几点:1.基于Open Gauss设计和实现了一个共享缓冲区的分布式数据库系统,并且利用了RDMA和持久内存技术进行了优化,提出了一个定制化、轻量级的网络通信框架,充分发挥了RDMA低延迟的特性。2.基于共享缓冲区分布式数据库系统,本文提出了一套有效的缓存管理模式,协调了不同节点之间缓冲区访问的冲突。由于修改缓冲区会导致其它节点内缓冲区副本的失效,本文也提出了全局缓存服务的方式,解决了缓存一致性的问题。3.为了在分布式环境下满足事务的一致性,本文提出了一种高效的集群事务管理模式,有效的解决了全局时间戳问题,为不同的计算节点提供了统一的快照和提交时间戳。同时,本文基于共享缓冲区分布式数据库提出了一种多节点写入的并发控制算法,采用了乐观锁的方式解决了事务之间的写写冲突,有效的避免了分布式锁的网络开销。4.将实现的共享缓冲区分布式数据库系统进行大量实验,进一步验证了这些方法都是正确且高效的。