OBSERVER 的日志流是什么

【 使用环境 】测试环境
【 OB or 其他组件 】 OBSERVER
【 使用版本 】4.2.1.11
【问题描述】日志流如何理解,跟unit有什么关系,跟租户副本有什么关系,有没有具体框架图方便我们理解日志流?
【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!

1 个赞

可以看看这个文档:
日志流和副本概述-V4.5.0-OceanBase 数据库文档-分布式数据库使用文档

@论坛小助手

在 OceanBase 数据库中,日志流是记录数据库所有变更操作的一组连续递增的日志数据,是数据同步的基础。每个租户内的日志流允许多个副本,多个副本之间基于 Paxos 协议同步数据,确保了在部分节点故障时仍能保持数据一致性。日志流与 Unit 和租户副本的关系在于:Unit 是 OceanBase 中的一个物理资源单位,包含了计算资源和存储资源,用于承载租户的工作负载;租户副本是租户数据的多个副本,分布在不同的 Unit 中以提高可用性和可靠性。日志流则用于记录租户内所有变更操作,并确保这些变更能够在各个副本间正确同步。

遗憾的是,提供的文档片段中没有具体的框架图来直观地展示日志流与 Unit 和租户副本的关系。但是,您可以通过以下 SQL 语句查询日志流的升级或降级事件,这可以帮助您更好地理解日志流的状态变化:

-- 查询日志流降级事件
SELECT * FROM oceanbase.DBA_OB_SERVER_EVENT_HISTORY WHERE event LIKE "%DEGRADE%";

-- 查询日志流升级事件
SELECT * FROM oceanbase.DBA_OB_SERVER_EVENT_HISTORY WHERE event LIKE "%UPGRADE%";

此外,您还可以通过 oceanbase.DBA_OB_LS_LOCATIONS 视图来查看日志流的位置信息和角色信息,进一步了解日志流的分布情况:

SELECT * FROM oceanbase.DBA_OB_LS_LOCATIONS;

详情请参考:

  1. 日志流
  2. 查看日志流升降级相关信息
  3. 副本介绍