(多选)关于 OceanBase 存储引擎,以下说法正确的有?
A. 写入先写 MemTable,再通过转储/合并落盘为 SSTable
B. Minor Compaction 是 Partition 级别的局部操作
C. Major Compaction 由各 Observer 自主决定触发时机
D. Major Compaction 期间旧 SSTable 不会被立即删除,磁盘占用暂时增大
E. 转储可以回收大量 DELETE 后的磁盘空间
(多选)关于 OceanBase 存储引擎,以下说法正确的有?
A. 写入先写 MemTable,再通过转储/合并落盘为 SSTable
B. Minor Compaction 是 Partition 级别的局部操作
C. Major Compaction 由各 Observer 自主决定触发时机
D. Major Compaction 期间旧 SSTable 不会被立即删除,磁盘占用暂时增大
E. 转储可以回收大量 DELETE 后的磁盘空间
正确的选项是 A、B、D 。
C不对。全局合并(Major Compaction)是一个集群级别的操作,为了保证数据的一致性视图,它通常由 RootService(主节点)统一调度和协调,而不是由各个 Observer 节点自主决定。Observer 只是执行者。
转储(Minor Compaction)主要是将内存中的增量数据写入磁盘,它生成的 SSTable 仍E不对,然包含被标记删除的数据(逻辑删除)。只有进行合并(Major Compaction) 时,系统才会真正物理删除那些被标记为 DELETE 的数据行,从而释放磁盘空间。单纯的转储无法有效回收 DELETE 操作占用的空间。