## 【单选】 OceanBase 合并(Major Freeze & Major Compaction)描述正确的是() A. 转储是把 SSTable 合并成基线版本 B. 合并会冻结内存中的 MemTable,生成 SSTable C. 合并的核心目的是把多个 SSTable 合并,清理过期版本、回收空间 D. 合并执行时会阻塞所有租户 DML 写入

【单选】

OceanBase 合并(Major Freeze & Major Compaction)描述正确的是()
A. 转储是把 SSTable 合并成基线版本
B. 合并会冻结内存中的 MemTable,生成 SSTable
C. 合并的核心目的是把多个 SSTable 合并,清理过期版本、回收空间
D. 合并执行时会阻塞所有租户 DML 写入

正确答案是 C 。

选项解析

  • A. 转储是把 SSTable 合并成基线版本
    描述错误。转储(Minor Compaction)是指将内存中的 MemTable 冻结后写入磁盘,生成 Mini SSTable 或 Minor SSTable,而不是将 SSTable 合并成基线版本。把增量 SSTable 与基线 SSTable 合并为新的基线版本,属于合并(Major Compaction)的操作。

  • B. 合并会冻结内存中的 MemTable,生成 SSTable
    描述错误。冻结 MemTable 并生成 SSTable 是转储(Minor Compaction)的核心动作。合并(Major Compaction)是将磁盘上已有的基线 SSTable(Major SSTable)与所有增量 SSTable(Mini/Minor SSTable)归并为一个新的基线 SSTable。

  • C. 合并的核心目的是把多个 SSTable 合并,清理过期版本、回收空间
    描述正确。合并(Major Compaction)会将基线数据与增量数据归并,删除失效的多版本数据,生成按主键排序的新基线 SSTable,同时通过编码压缩降低存储空间占用,其核心目的正是清理过期版本、回收空间、减少读放大。

  • D. 合并执行时会阻塞所有租户 DML 写入
    描述错误。OceanBase 的合并操作虽然消耗 CPU/IO 资源,可能导致业务性能下降,但并不会阻塞租户的 DML 写入。系统采用分布式副本轮流错峰合并等机制,保证合并期间业务仍可正常读写。