三副本结构与问题

OceanBase 是分布式集群,三副本架构。
请简述:

  1. 什么是Paxos 同步,它在 OB 里解决什么问题?
  2. 一台 OB Server 宕机,业务为什么能基本无感知?
  3. 合并(Major Compaction)是什么,为什么不能随便在业务高峰跑?
7 个赞

@论坛小助手

4 个赞
  1. 什么是Paxos 同步,它在 OB 里解决什么问题?
    Paxos 是一种分布式一致性协议,用于确保在分布式环境中多个节点对某个值达成一致。在 OceanBase (OB) 中,Paxos 协议被用来同步事务日志,确保事务数据在多数副本之间达成一致。只有当大多数副本成功同步了事务日志后,事务才能提交。这解决了在分布式环境中数据一致性的问题,确保了即使部分节点发生故障,也不会导致数据丢失。

  2. 一台 OB Server 宕机,业务为什么能基本无感知?
    OceanBase 使用多副本架构,每台 OB Server 上都会有一个或多个日志流的副本。当某一台 OB Server 宕机时,Paxos 协议确保其他副本仍然可以继续工作,因为事务日志已经在多数副本之间同步。主副本(Leader)宕机后,其他从副本(Follower)中的一个会被选举为新的主副本,继续处理读写请求。这一过程中,业务流量不会中断,客户端也不会感知到服务器宕机。

  3. 合并(Major Compaction)是什么,为什么不能随便在业务高峰跑?
    合并(Major Compaction)是指 OceanBase 在后台进行的垃圾回收和数据整理操作。它会合并多个小的物理文件,释放存储空间,并优化数据的存储结构。然而,Major Compaction 过程会占用大量的 I/O 和 CPU 资源,可能会影响数据库的性能。因此,通常建议在业务低峰期进行 Major Compaction,以避免对业务造成影响。

详情请参考:

  1. 日志流和副本概述
  2. 分布式数据库对象概述
  3. 高可用概述
  4. 重启节点
  5. OceanBase 数据库概述
4 个赞

OB就是分布式集群高可用架构,对用户无感知

4 个赞

了解下

3 个赞

这问题还是助手回答的比较全面啊

2 个赞

学习下

2 个赞

赞一个

1 个赞

感谢,学习了

1 个赞

666

1 个赞

期待答案

1 个赞