https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000821579
上述文档中提到
LS 数量 = UNIT_NUM * first_level_primary_zone_num
https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000819175
上述文档中提到
用户租户单个节点上达到稳定状态的日志流个数
* 当前用户租户有广播日志流时:`Unit 个数 * PRIMARY_ZONE 个数 + 2`
* 当前用户租户没有广播日志流时:`Unit 个数 * PRIMARY_ZONE 个数 + 1`
我的疑问是,这两篇文档中的公式,如何统一起来理解,尤其是第二篇文档中的公式,这里"Unit 个数"和"PRIMARY_ZONE 个数"具体指的是什么,单个租户在单个节点上,难道不是仅允许放置一个Unit吗,"PRIMARY_ZONE 个数"不用考虑优先级什么的吗?公式里为什么要+1或者+2?
和顺
#3
第一个链接中,不包含1号日志流
LS 数量 = UNIT_NUM * first_level_primary_zone_num
第2个链接中, 包含1号日志流
当前用户租户有广播日志流时:`Unit 个数 * PRIMARY_ZONE 个数 + 2
当前用户租户没有广播日志流时:`Unit 个数 * PRIMARY_ZONE 个数 + 1
当前用户租户有广播日志流时,+2 :(1个1号日志流+1个广播日志流)
当前用户租户没有广播日志流时 +1: (1个1号日志流)
2 个赞
辞霜
#4
你好,广播日志流时用于承载复制表的,没有复制表就没有.
UNIT个数select * from gv$OB_UNITS where tenant_id=xxxx;
primary_zone可以理解为leader副本所在的zone.
1 个赞
第2个链接中,"Unit 个数"是否指UNIT_NUM?,对于单个租户在单个节点上的资源而言,它最多只会有一个UNIT,为什么要乘以Unit个数?
第2个链接中,"PRIMARY_ZONE 个数"是否指first_level_primary_zone_num,还是PRIMARY_ZONE中所有优先级的zone?
和顺
#6
1、链接2中:unit个数指的就是unit_num,之所以要带上unit_num,为了和链接1、以及多unit_num的情况下计算公式统一。
2、链接2中:PRIMARY_ZONE 个数" 也是指的 first_level_primary_zone_num。
感谢反馈,我们找文档同学确认后调整一下相关的描述。
1 个赞
你好,unit_num这里我还是没理解,就以官方文档以前的架构图介绍为例。从图中可以看出Zone1,Zone2,Zone3在PRIMARY_ZONE中的优先级是相等的,即first_level_primary_zone_num=3,因为每个zone上都有LS Leader分布。对于Tenant1来说,它的unit_num是2,因为在3个zone的6个节点上都有Unit分布,那么如果按上述公式来计算,是否计算得出每个节点上LS数量为6?但是图中每个节点上仅画了3个LS,并且链接1中有这么一句说明:
日志流组内日志流的个数等于 PRIMARY_ZONE 的第一优先级的个数
所以感觉有一些矛盾,或者说单个节点上是会存在单个租户的多个LS Group的吗?如果不存在,那么这里带上unit_num,是否应该描述为单个zone上的LS数量,而不是单个节点呢?
和顺
#10
1、
对于 tenant1 租户: unit_num=2, primary_zone=(zone1,zone2,zon3),
所以 tenant1 租户的日志流leader个数= UNIT_NUM * first_level_primary_zone_num=2*3=6
对于 tenant2 租户:unit_num=1,primary_zone=(zone1,zone2,zon3),
所以 tenant2 租户的日志流leader个数= UNIT_NUM * first_level_primary_zone_num=1*3=3
和上图中的图例中ls leader是吻合的。
2、同一个租户所有 Zone 的 Unit 个数相同,系统为同一个租户每个 Zone 的 Unit 进行了编号,不同 Zone 之间相同编号(UNIT_GROUP_ID)的 Unit 的 Unit 组成一个 Unit Group。
一个日志流属于一个日志流组,日志流组与 Unit Group 一一对应,日志流组内所有日志流分布在对应的 Unit Group 上,日志流 Leader 打散在 Primary Zone 上,日志流组内的日志流个数随着租户 Primary Zone 配置的变化而动态变化。
综上,单个节点上是不会存在单个租户的多个LS Group的情况。是的,带上unit_num 可以理解为zone内的日志流数量。