Page 269 - 《软件学报》2026年第1期
P. 269
266 软件学报 2026 年第 37 卷第 1 期
限制, 从而提高了 PolarFS 并行写入的性能. 此外, PolarFS 在用户空间实现了类似 POSIX 的接口, 这使得 PolarDB
可以通过较小的修改实现性能提升. 这些特点使 PolarFS 能够在大规模数据处理和高性能需求下依然保持高效运
行, 在可用性方面表现出色.
在大数据和云计算的背景下, 传统的数据库系统在处理大规模数据时常常遇到性能瓶颈, 尤其是在需要快速
查询和数据分析的场景下. PolarDB-IMCI [38] 作为一种云原生 HTAP 数据库, 通过先进的 OLAP 性能和最小化对
OLTP 的干扰, 优化了可见性延迟以提高数据的新鲜度, 其采用内存列索引作为补充存储来加速分析查询, 并引入
了 CALS 和 2P-COFFER 两项关键技术来高效传播更新. 此外, PolarDB-IMCI 利用共享存储上的检查点来增强计
算资源的快速横向扩展, 并通过新的查询优化流程提高了复杂查询的处理效率. 这些技术的结合不仅提升了系统
在处理大规模数据时的性能, 还大幅提高了系统的高可用性. 通过优化写入和查询性能、减少延迟和资源消耗,
PolarFS 和 PolarDB-IMCI 能够在大数据和云计算环境中提供更可靠、更高效的服务, 确保系统在面对大量并发访
问和数据处理需求时依然能够保持高可用性.
互联网规模的应用程序通常分层在数据中心 (data center, DC) 中运行的高性能分布式数据库引擎之上. 最近
的一个趋势是使用跨多个 DC 的地理复制来避免用户跨区域访问数据, 用户可以在当前区域访问所需数据, 从而
减少了因跨区域访问带来的延迟和网络不稳定性. 这种情况对分布式数据库提出了很大的挑战. 为解决这一问题,
文献 [39] 中引入了 Cure. Cure 是一个在保持高可用性的同时提供强一致性语义的分布式存储系统, 主要通过因果
一致性、原子性以及对高级数据类型的支持来实现这一点. Cure 提供了一种新颖的编程模型: 因果+一致性, 并通
过交互事务接口提供 CRDT (高级复制数据类型) 支持. Cure 提供了与可用性保持一致的最高水平的保证. 这些保
证包括: 因果一致性 (无有序性异常)、原子性 (一致的多密钥更新) 以及支持安全解析并发更新的高级数据类型
(开发者友好的 API) (保证收敛). 对 Cure 的评估结果表明, 当将 Cure 与现有的在不同工作负载下提供相似但较弱
语义的因果一致系统进行比较时, 它表现出更高的性能, 同时实现了更好的更新可见性延迟和对完全 DC 和网络
故障的容忍度. 此外, GeoGauss [40] 系统也使用 CRDT 并实现副本顺序一致性. 在 GeoGauss 中, CRDT 确保了即使
在不同数据中心之间的网络延迟和分区情况下, 也能保持数据一致性, 并且通过副本顺序一致性提供高可用性.
随着互联网技术的快速发展, 数据库系统可能遇到各种类型的灾难, 数据备份、数据恢复等大规模在线服务
越来越多. 容错对于一个系统的高可用性来说是至关重要的, 以便允许它即使在组件故障或一个或多个故障存在
的情况下也能提供所需的服务. 导致数据丢失的原因可能有自然灾害、应用程序故障、网络故障、网络入侵、黑
客攻击、系统故障甚至是人为错误等 [41] . 灾难恢复包括 3 种类型: 热备份站点、温备份站点和冷备份站点 [42] . 热
备份站点计算机配置并配备了一系列软件和数据, 以在主服务器关闭时接受生产负载. 故障转移通常 (如果需要)
通过集群配置获得. 备用集群配置是独立的, 并且与主数据库配置有区别. 温备份站点计算机硬件已预先配置并提
供了一系列软件. 一旦灾难发生, 域名系统就会切换并重定向到备份站点, 服务器承担生产负载. 必须手动重新启
动服务. 在冷备份站点中, 计算机的硬件元素需要一组与要生成或恢复的数据集相关联的软件, 然后才能将系统提
升到生产状态.
一些研究给出了数据复制、备份实现高可用性容灾和灾难恢复. Pokharel 等人 [43] 完成的云系统灾难恢复的地
理冗余方法 (geographical redundancy approach, GRA) 通过采用马尔可夫模型对 GRA 进行分析实现了高可用性,
同时保持了低停机时间和低成本. Sengupta 等人 [44] 提出了多站点灾难恢复数据分发计划 (data distribution plan for
disaster recovery, DDP-DR), 根据保护级别和防止约束提供不同的数据分发计划从而解决了数据备份驻留在多个
分布式位置的多站点架构中的灾难恢复问题. Saquib 等人 [45] 针对云计算系统中的数据库应用程序提出了一种新
模型. 该模型提供了一种零数据丢失和快速恢复的灾难恢复解决方案, 利用同步技术进行数据复制, 以确保最小的
恢复点目标 (recovery point objective, RPO) 和恢复时间目标 (recovery time objective, RTO). Lenk 等人 [46] 提出一种
数据部署方式利用云备份灾难恢复在云中进行热备份, 恢复时间明显缩短.
容错机制在满足可用性需求方面起着至关重要的作用. 人们提出了多种可用性模型来评估计算系统, 其中贝
叶斯网络模型由于其强大的建模形式而在工业界和研究中得到了广泛的应用. 文献 [47] 引入一种高层次的建模
方法来自动构建贝叶斯网络, 解决了利用贝叶斯网络评估大规模冗余和复制服务可用性的实际建模挑战. 贝叶斯

