首批通过分布式安全可靠测评,为关键业务系统打造
多副本日志同步
更新时间:2026-04-07 20:57:20
OceanBase 数据库使用日志持久化并在多个副本之间同步数据。
多副本之间使用 Paxos 协议进行同步。具体表现为,OceanBase 数据库 V4.0.0 版本参考文件系统,将日志服务抽象为 "Paxos Backed Append Only Log File System",简称 Palf。
Palf 是数据库的一个基础组件,它需要完成两大核心功能:
对于事务系统,具备以下特性:
满足事务系统 Write-Ahead Logging 的功能需求,实现事务的原子性和持久性。
支持返回特定语义的时间戳,满足读写事务、备机弱读等生成事务版本号的需求。
实现事务的高性能,同时做到多核下的可扩展。
对于分布式,具备以下特性:
基于 Paxos 协议,保证数据在多数派副本持久化成功;同时通过成员变更提供容灾能力,实现高可用和高可靠。
提供异步复制的能力。
提供完善的诊断监控能力,实现可诊断、可运维。
在 OceanBase 数据库 V4.0.0 版本中,一条日志使用日志流内唯一的 LSN (Log Sequence Number) 表示,使用 LSN 可以在内存及磁盘上唯一定位一条日志。对于已经明确提交的日志,在多个副本之间完全一致。