oceanbase需要先转储的场景有哪些呢?先转储有有哪些好处呢?不是很懂

oceanbase需要先转储的场景有哪些呢?先转储有有哪些好处呢?不是很懂

1 个赞

OceanBase 数据库的存储引擎采用 LSM-Tree 架构,数据大体上被分为 MemTable 和 SSTable 两部分。SSTable 会继续细分为 Mini SSTable、Minor SSTable、Major SSTable 三类。

转储包含两个过程:Mini Compaction 和 Minor Compaction。当 MemTable 的内存使用达到一定阈值时,就需要将 MemTable 中的数据存储到磁盘上的 Mini SSTable 以释放内存空间,该过程称为 Mini Compaction。随着用户数据的写入,Mini SSTable 的数量越来越多,当 Mini SSTable 的数量超过一定的阈值时,后台会自动触发 Minor Compaction。在转储之前首先需要保证被转储的 MemTable 不再进行新的数据写入,该过程称为冻结(Minor Freeze),冻结会阻止当前活跃的 MemTable 再有新的写入,同时会生成新的活跃 MemTable。

转储触发方式

转储支持自动触发和手动触发两种方式。