ob4.0中连all_zone视图都给更改了啊

【 使用环境 】测试环境
【 OB or 其他组件 】
【 使用版本 】4.0
【问题描述】__all_zone视图中已经移除了major freeze的相关信息啊,连快照版本号、是否合并这个状态都没了啊?
为啥不在支持集群级别合并了哪?那定时合并是否可以每个租户单独设置合并时间点哪?

1 个赞

OB <= 3.x的版本,major freeze是集群级别的,优点是简单方便,但也存在缺点:
(1) 无法保证租户间隔离性,合并时租户之间会互相影响
(2) 部分功能性问题,也无法做到按租户拆分。

因此在OB 4.0上,我们将major freeze改成了租户级。

我们对__all_zone表进行了拆分,__all_zone表只保留zone相关的基本信息,major freeze相关的信息放到了__all_merge_info(用于存放租户合并的整体merge信息)、__all_zone_merge_info(用于存放租户下每个zone的merge信息)。__all_merge_info中有合并版本号、合并状态、是否发生了error等信息。除了sys租户外,每个用户租户对应的meta租户下,都有这两张表,用于保存该用户租户和meta租户的merge信息。

当然,我们也可以在sys租户下直接查看CDB_OB_MAJOR_COMPACTION来查看所有租户的__all_merge_info信息、CDB_OB_ZONE_MAJOR_COMPACTION来查看所有租户的__all_zone_merge_info信息。

OB 4.0支持对每个租户单独设置合并时间点,相关配置项为major_freeze_duty_time,系统租户下可执行以下设置语句:

alter system set major_freeze_duty_time = 'xxx' tenant sys;
1 个赞