结合 DBImpl::Open、Recover、VersionSet::Recover、WAL 回放与 InstallSuperVersion 的源码,梳理 RocksDB 在启动阶段如何从磁盘元数据和 WAL 重建可服务的运行时对象图。
先用更清晰的概念分层讲清 DB、CF、MemTable、WAL、SuperVersion、VersionSet、MANIFEST 分别负责什么,再从 DBImpl、ColumnFamilyData、SuperVersion、MemTable、VersionSet 的源码关系出发,建立 RocksDB 的整体架构与 LSM-Tree 心智模型。
RocksDB 长期学习索引与轻量状态文件,用于恢复学习进度、导航每日文章,并记录掌握度与最近一天复习问答闸门状态。