OceanBase V4 中内存是如何划分的?转储与合并如何影响内存?
OceanBase 内存主要划分为 MemStore(MemTable 内存) 、KVCache(块缓存) 和 SQL 工作区 三大块,其中 MemStore 用于存放增量写入数据。
对内存的影响:
- 转储(Minor Compaction) :当 MemTable 达到阈值时,将增量数据持久化为 Minor SSTable 并释放内存,是分区级独立行为。
- 合并(Major Compaction) :将增量数据与基线数据合并为新的 Major SSTable,是租户级全局操作,生成全局一致性快照。
转储和合并都会释放 MemStore 内存,避免内存耗尽。