Page 268 - 《软件学报》2026年第1期
P. 268
向清平 等: 分布式数据库高可用研究进展 265
性能; 对于数据库系统来说, RDMA 同样可以提高数据库系统各个模块的性能, 包括存储引擎、并发控制、事务
处理和查询执行等. 通过减少数据传输的延迟和 CPU 负载, RDMA 使得数据库系统能够更快速地处理事务和查
询, 减少了等待时间和系统因处理时间过长发生死锁、资源竞争或超时错误的可能性, 从而提高系统的可用性和
可靠性 [34] .
表 1 不同的网络拓扑的特点
拓扑结构 特点 优势 不足
当电缆发生故障时, 整个网络都会
通过单根电缆连接所有计算机和网 成本低; 需要的电缆少; 适用于小 发生故障; 当网络流量很大或添加
总线型拓扑
络设备; 沿着一个方向传输数据 型网络; 易于扩展 更多节点时, 网络性能会下降; 电缆
长度有限; 传输速度慢于其他结构
添加或删除计算机节点可能扰乱网
网络传输不会因节点多或流量高
环形拓扑 计算机系统以环形结构相互连接 络活动; 一台计算机节点出现故障
而受到影响; 易于扩展; 成本低
会影响整个网络
当计算机节点少和网络流量低时 安装和使用成本高; 当中央集线器
用电缆将所有计算系统连接到单个
星形拓扑 性能很好; 易于升级集线器; 易于 发生故障时整个网络将停止工作;
集线器; 该单个集线器作为中心节点
排除故障; 易于修改和设置 整个系统性能取决于集线器
每根电缆都可以传输自己的数据
所有节点相互连接; 系统结构稳健; 难于安装和配置; 布线成本高且需
网状拓扑 负载; 结构稳健性好; 故障诊断容
易于诊断故障 要大量布线
易; 提供隐私和安全
是总线拓扑和星型拓扑的扩展; 布线成本高; 多个节点维护困难; 当
结构中包含根节点, 其他节点连接到
树形拓扑 易于扩展节点; 易于管理和维护; 中央集线器发生故障时整个网络都
根节点; 易于管理和错误检测
易于检测错误 会发生故障
混合拓扑 2个或2个以上的拓扑结构的组合 可靠、有效、可扩展、灵活 设计复杂、成本高
2.2 数据与计算
本节主要从存储与冗余备份、事务和负载均衡方面展开讨论. 对于存储与数据备份层面, 本文分析数据库系
统可能遇到的灾难和问题并列举一些容灾方法技术. 对于数据层面, 本文主要从基础理论、事务调度、确定性数
据库系统这 3 个方面展开讨论. 对于负载均衡, 本文主要介绍云环境中的一些负载均衡算法及其应用.
2.2.1 存储与冗余备份
在大数据时代, 随着数据量的增长, 用户对云服务的需求也随之增加, 云服务提供商需要在数据涌入的情况下
维持系统可用性. 复制可以在云计算中确保跨服务器的数据可访问性、安全性和可用性, 但过多的副本会增加存
储成本, 而重复数据删除可能会损害对于云服务至关重要的可用性和可靠性. 文献 [35] 尝试在重复数据删除和复
制之间取得平衡, 在不增加过多费用的情况下实现高效、高可靠的存储系统. 其提出名为 FASTEN 的新型云存储
数据分散方案, 用于平衡“重复数据删除”和“复制”, 包括容错子集和服务器评级算法, 前者组织数据块以获得最大
的容错能力, 后者则根据用户定义的冗余选择最佳服务器.
在大规模系统中, 如部署上千个节点遍布全球的多数据中心, 硬件故障和网络中断不再罕见, 而是成为两个主
要故障源. 对于微信这样的大规模系统, 其存储系统除了需要满足大数据的 3V 特性 (容量 (volume)、速度 (velocity)、
多样性 (variety)) 之外, 高可用性也是存储服务需要重点考虑的. 可用性对于用户体验至关重要, 微信中的大多数
应 用 程 序 都 要 求 延 迟 开 销 低 于 2 0 m s , 因 此 , 微 信 团 队 为 支 持 微 信 综 合 业 务 开 发 了 高 可 用 性 存 储 系 统
PaxosStore [36] . 它在存储层采用组合设计, 针对不同存储模型构建多个存储引擎, 将基于 Paxos 的分布式共识协议
提取为底层多模型存储引擎通用访问的中间件, 同时 PaxosStore 的无租约 Paxos 实现有利于快速故障转移, 而不
会导致系统服务停机.
随着云计算和大数据应用的普及, 传统文件系统在处理大规模数据和高性能需求方面面临挑战. PolarFS [37] 利
用新兴的硬件和最先进的优化技术, 例如操作系统旁路和零拷贝, 使其具有与 SSD 上的本地文件系统相当的延迟,
通过开发一种新的共识协议 ParallelRaft, PolarFS 在不牺牲存储语义一致性的情况下放松了 Raft 严格的顺序写入

