1 .一种基于WAL实现分布式数据库集群任意时间点恢复的方法,其特征是增加相关DDL
语句,并重写分布式数据库集群LOAD数据恢复流程,完成DUMP预处理,其中通过分布式数据
库集群汇集WAL,利用WAL记录的所有应该落盘的数据,从指定的WAL汇集目录读取WAL文件,
并按照指定时间点提取WAL中存放的时间点之前的落盘数据,加载WAL文件到临时RocksDB
实例,
通过RocksDB实例获取WAL记录的所有应该落盘的key‑value数据,并对key‑value数据
解析处理,并构建新DUMP文件和SST文件,交由LOAD数据恢复流程,恢复数据库集群至此WAL
所记录的之前任意时间点,
所述恢复数据库集群至此WAL所记录的之前任意时间点的流程为:
S1:解析预处理已有的DUMP文件,获取descriptors信息,得到WAL汇集目录下所有WAL
文件列表;
遍历WAL数据,将读取的数据记录写入临时RocksDB引擎;
根据数据内容时间戳与指定时间点进行比较,将处于恢复时间范围内的descriptor进
行处理,记录descriptor修改和最新descriptor;
构建新的SST文件,遍历临时RocksDB引擎中的数据,将处于恢复时间内的Key‑Value写
入SST并更新descriptors记录的span信息;
处理descriptor,写入生成DUMP文件;
S2:将DUMP文件和SST文件路径加入备份文件路径列表,继续执行原有LOAD数据恢复流
程。
2.一种基于WAL实现分布式数据库集群任意时间点恢复的系统,其特征是包括预处理
模块、数据提取和准备模块以及恢复模块,
预处理模块利用增加的相关DDL语句和重写的分布式数据库集群LOAD数据恢复流程,
完成DUMP预处理,通过分布式数据库集群从指定的WAL汇集目录读取WAL文件并汇集WAL,其
中预处理模块通过分布式数据库集群汇集WAL,利用WAL记录的所有应该落盘的数据,从指
定的WAL汇集目录读取WAL文件,并按照指定时间点提取WAL中存放的时间点之前的落盘数
据,加载WAL文件到临时RocksDB实例,
数据提取和准备模块根据重写的LOAD数据恢复流程,通过RocksDB实例获取WAL记录的
所有应该落盘的key‑value数据,并对key‑value数据解析处理,并构建新DUMP文件和SST文
件,交由恢复模块继续LOAD数据恢复流程,恢复数据库集群至此WAL所记录的之前任意时间
点,
所述恢复数据库集群至此WAL所记录的之前任意时间点的流程中,预处理模块解析预
处理已有的DUMP文件,获取descriptors信息,得到WAL汇集目录下所有WAL文件列表;
遍历WAL数据,将读取的数据记录写入临时RocksDB引擎;
数据提取和准备模块根据预处理模块加载到临时RocksDB数据内容的时间戳与指定时
间点进行比较,将处于恢复时间范围内的descriptor进行处理,记录descriptor修改和最
新descriptor;
构建新的SST文件,遍历临时RocksDB引擎中的数据,将处于恢复时间内的Key‑Value写
入SST并更新descriptors记录的span信息;
处理descriptor,写入生成DUMP文件;
权 利 要 求 书
1/2 页
2
相关文档
评论