数据合并
本页面为您介绍数据合并的操作步骤。
背景信息
OceanBase 数据库的存储引擎基于 LSM-Tree 架构,将数据分为静态基线数据(放在 SSTable 中)和动态增量数据(放在 MemTable 中)两部分,其中 SSTable 是只读的,一旦生成就不再被修改,存储于磁盘;MemTable 支持读写,存储于内存。数据库 DML 操作插入、更新、删除等首先写入 MemTable,等到 MemTable 达到一定大小时转储到磁盘成为 SSTable。更多信息请参见 存储架构概述。
当 MemTable 的大小超过一定阈值时,就需要将 MemTable 中的数据转存到 SSTable 中以释放内存,我们将这一过程称之为转储。有关转储的详细介绍,请参见 转储。
转储会生成新的 SSTable,当转储的次数超过一定阈值时,或者在每天的业务低峰期,系统会将基线 SSTable 与之后转储的增量 SSTable 给合并为一个 SSTable,这一过程称之为合并。有关合并的详细介绍,请参见 合并。
使用场景
定时合并:不需要用户主动调度,根据实际业务峰值情况,可以选择在业务低峰期时间点让系统自动执行合并操作。
手动合并:可以根据实际业务情况随时发起数据合并。
合并数据
在 集群工作台 页面,单击数据合并后的 操作,可对数据进行发起合并、查看合并记录和修改合并时间的操作。默认每天 02:00 会发起数据合并。
发起合并
即手动合并,单击 发起合并,即可立即发起数据合并。请在备份任务结束后,避开流量高峰期进行此项操作。
查看合并记录
单击 查看合并记录,您可查看近三次合并记录,包括 合并开始时间、合并结束时间、耗时、状态 和 数据版本号。
修改合并时间
单击 修改合并时间,可修改每日自动合并的时间。