
Database
2026


数据库行业学习 Day 001:现代数据库行业全景
·10398 字·21 分钟
从 storage-first 视角建立现代数据库行业全景,先把传统单机数据库、嵌入式存储引擎、分布式 SQL、云原生数仓、实时 OLAP、搜索与向量数据库放到同一张地图里,再沉淀后续源码阅读和系统调研的问题框架。


RocksDB 学习笔记 Day 009:Read Path / Get / MultiGet / Iterator
从 DBImpl::GetImpl、MultiGetImpl、NewInternalIterator、Version::Get、TableCache 和 BlockBasedTableReader 源码出发,梳理 RocksDB 读路径如何在 SuperVersion 稳定视图上先查 memtable,再查 immutable memtable,最后查 SST,并说明 Get、MultiGet 与 Iterator 的职责边界。

RocksDB 学习笔记 Day 008:SSTable / BlockBasedTable / 各类 Block
结合 BuildTable、TableBuilder、BlockBasedTableBuilder、BlockBuilder、BlockHandle 和 Footer 的源码,从写侧视角梳理 RocksDB 如何把 flush/compaction 输入流编码成 block-based SST,以及 data/index/filter/properties/metaindex/footer 各自的职责与字节边界。

RocksDB 学习笔记 Day 007:Flush
结合 ScheduleFlushes、SwitchMemtable、BackgroundFlush、FlushJob、MemTableList::TryInstallMemtableFlushResults 与 GetDBRecoveryEditForObsoletingMemTables 的源码,梳理 RocksDB 如何把 mutable memtable 切成 immutable、刷成 L0 SST,并推进 MANIFEST 与 WAL 保留边界。




