【单选】
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 写入。系统采用分布式副本轮流错峰合并等机制,保证合并期间业务仍可正常读写。