关于 OceanBase 租户克隆(Tenant Clone)功能完成后的存储空间管理,以下描述正确的是?


A. 克隆完成后,克隆租户与原租户共享所有 SSTable 数据,因此克隆租户的写入操作不会产生额外的存储空间消耗。

B. 克隆租户在写入新数据或修改已有数据时,会触发 Copy-on-Write 机制,将受影响的宏块复制到克隆租户的存储空间,逐步产生额外空间占用。

C. 克隆租户的存储空间在克隆完成时即被完全复制,其空间占用与原租户完全相同,因此克隆前需确保有足够的空闲磁盘空间。

D. 克隆操作会创建一个空的租户结构,原租户的数据通过逻辑导入方式逐步填充到克隆租户,导入完成后原租户与克隆租户的数据完全独立。

1 个赞

解析
OceanBase 的租户克隆基于存储层的物理快照技术。克隆初始阶段,克隆租户与原租户共享相同的 SSTable 数据文件,不额外占用存储空间。但当克隆租户发生写入(INSERT/UPDATE/DELETE)时,会触发 Copy-on-Write(写时复制) 机制,将被修改的宏块复制到克隆租户自己的存储空间,后续写入逐步产生新的存储占用。这与快照的原理类似,空间消耗是渐进式的。

  • A 错误 :克隆租户的写入操作会触发 Copy-on-Write,产生额外空间占用,并非无消耗。
  • B 正确 :Copy-on-Write 机制是克隆租户空间管理的核心。
  • C 错误 :克隆初始时共享 SSTable,不立即复制全部数据,无需提前准备全量空间。
  • D 错误 :克隆基于物理快照,而非逻辑导入,初始数据共享存储,不是空结构逐步填充。
1 个赞

正确答案:B

1 个赞

不错不错

2 个赞

非常nice

2 个赞