看文档遇到 LogStream 概念不太理解,请教:
- LogStream 和 Tablet 是什么关系?
- Paxos 协议是基于 LogStream 来工作的吗?
感谢解答!
1 个赞
论坛小助手
#4
根据文档库中的信息,我来为您解答关于 OceanBase 集群中日志流(LogStream)的相关问题。
1. LogStream 和 Tablet 的关系
-
日志流(Logstream, LS) 是由 OceanBase 数据库自动创建和管理的一个实体,它代表了一批数据的集合。从存储角度来看,日志流可以被视作 Tablet 容器,支持添加和管理Tablet数据。
-
Tablet 是数据存储的对象,每个分区都有其对应的 Tablet,它具备存储数据的能力,并且支持在机器之间迁移。每个日志流包括若干个 Tablet,这些 Tablet 以及有序的 Redo 日志流共同组成了日志流的内容。简单来说,日志流是一个逻辑单位,而 Tablet 是其内实际承载的数据单元。
- 参考文档:集群架构 → 基本概念 → Logstream
2. Paxos 协议与 LogStream 的关系
- 在 OceanBase 中,Paxos 协议确实是基于日志流(Logstream)工作的。通过 Paxos 协议,OceanBase 实现了多副本之间的日志同步,从而保证副本间数据的一致性及高可用性。具体而言,每一个日志流及其副本构成一个独立的 Paxos 组,在这个组里选举出一个主副本(Leader),其它作为从副本(Follower)。Leader 负责处理客户端请求并将更新以日志形式广播给所有 Follower;Follower 收到消息后会进行持久化并返回确认信息给 Leader,当 Leader 收集到大多数成员的确认响应时,则认为该条记录已成功提交。
- 更进一步地讲,OceanBase 自 V4.0 开始引入 Palf (Paxos Backed Append Only Log File System),这是一种基于 Paxos 协议的日志文件系统,用于实现更高效可靠的日志管理和同步机制。
- 参考文档:
希望以上解释能帮助您更好地理解 OceanBase 中的日志流(LogStream)及其相关概念!如果还有其他疑问,请随时提问。
详情请参考:
- 集群架构
- 日志流和副本概述
- Paxos 协议
- oceanbase.DBA_OB_TABLET_TO_LS
- Redo 日志
- 副本介绍
- 多副本日志同步
- oceanbase.CDB_OB_TABLET_TO_LS