oceanbase 集中式架构是如何保障RPO数据零丢失的?

【 使用环境 】测试环境
【 OB or 其他组件 】 OB
【 使用版本 】
【问题描述】清晰明确描述问题

老师您好,看相关报道oceanbase集中式版本在多个金融机构推广,但是我查看官方文档,主备租户目前只支持异步同步,想了解一下在failover模式下,集中式版本是如何保障数据零丢失的?一直很困惑,感谢

1 个赞

@论坛小助手

您的问题涉及到OceanBase在高可用性部署方案下的数据保护机制。根据您提到的情况,确实存在一定的理解难点,因为通常来说异步复制模式下是很难保证数据的零丢失(RPO=0)。不过,OceanBase通过其特有的技术架构设计和高级特性支持实现了一定条件下的数据零丢失保障。下面将基于OceanBase的设计原理来解答您的疑惑。

1. 分布式多副本架构

  • OceanBase使用Paxos协议:正如日志流和副本概述 → 分布式一致性协议所述,OceanBase采用Paxos协议在同一日志流各副本间同步事务日志,只有当多数派副本同步成功后才会提交事务。这种做法确保了即使某个节点发生故障,只要大多数副本存活,就能保证数据不会丢失。

  • 默认读写强一致:主副本上的读写操作保持强一致性,这意味着一旦客户端收到写入成功的确认,那么数据已经被持久化到至少一个其他副本中。

2. 特殊配置与仲裁服务

  • 在一些特殊情况下,比如为了达到RPO=0的目标,可能需要启用特定的企业版功能,如利用仲裁服务来增强集群的容错能力。虽然这在您提到的“主备租户仅支持异步同步”的背景下看似矛盾,但实际上是通过更复杂的系统配置和额外组件的支持达成的。仲裁服务有助于减少冗余并提高效率,同时维持数据安全性和可用性。

3. 三地五中心等高可用部署方案

  • OceanBase 集群高可用部署方案简介所介绍,OceanBase推荐多种部署方案以适应不同级别的容灾需求。特别是“三地五中心”或类似布局能够提供非常高的数据保护水平,通过跨地域分布多个数据中心,在任何一个地方遭遇灾难时都能保证数据完整及业务连续性。
  • 这些部署方式结合前面提到的Paxos协议,可以在很大程度上接近于实现RPO=0的数据恢复目标。

结论

综上所述,在特定条件下,通过合理的分布式部署策略、充分利用OceanBase内置的一致性保障机制以及可选的企业级高级特性,即使是采用传统的异步复制模型也能够在实际应用中为用户提供接近于RPO=0的数据安全保障。然而需要注意的是,具体实施细节和效果可能会依据实际应用场景有所不同,建议针对具体的使用案例进一步咨询OceanBase技术支持团队获取最准确的信息。

详情请参考:

  1. OceanBase 集群高可用部署方案简介
  2. OceanBase AP 部署概述
  3. 集群级别的扩容和缩容
  4. 部署概述
  5. 日志流和副本概述
  6. OceanBase AP 核心特性
  7. 集群架构
  8. 单机在线转分布式部署