土法炼钢兴趣小组的算法知识备份

数据库内核实验索引

文章导航

分类入口
dbstorage
标签入口
#database#lsm-tree#storage-engine#postgresql#mysql#innodb#clickhouse#columnar#lakehouse#iceberg#parquet#flink#kafka#stream-processing#trino#query-engine#rocksdb#leveldb#compaction#milvus#vector-search#redis#cache#memcached#lucene#elasticsearch#full-text-search#bm25#tikv#tidb#tiflash#htap#percolator#foundationdb#strict-serializability#deterministic-simulation#sqlite#embedded#btree#vdbe#wal#wiredtiger#mongodb#history-store#mvcc

目录

数据库内核索引

本目录汇总十四类数据库内核内容:生产级 RDBMS 源码拆解(PostgreSQL、MySQL InnoDB)、OLAP 列存引擎(ClickHouse / DuckDB)、数据湖与开放表格式流式数据处理分布式 OLAP 查询引擎RocksDB 写优化 LSM 内核向量检索引擎Redis / 缓存内核全文检索引擎TiKV / HTAP 内核FoundationDB 内核(Unbundled / OCC / TLog / Redwood / Simulation)、SQLite 内核(单文件 / Pager / B-Tree / VDBE / WAL)、WiredTiger 内核(Cache / Eviction / Reconciliation / History Store / Checkpoint),以及 从零实现 LSM-Tree 的实验系列;与 MVCC / InnoDB undo 对照。

系列入口

PostgreSQL 内核机制(26 篇,已完成)

系列入口 →

从进程模型、MVCC、WAL、Buffer Pool、查询优化器、索引到流复制与运维实战——PG 内核完整拆解。

MySQL InnoDB 内核机制(20 篇,已完成)

系列入口 →

InnoDB 架构、页格式、Buffer Pool、Redo/Undo、MVCC、锁、binlog 与 PG 系列对照。全 20 篇。

列存引擎内核(16 篇,已完成,§14 学术加深)

系列入口 →

ClickHouse MergeTree、向量化执行、Merge 与分布式;DuckDB 对照。全 16 篇;研究台账见 columnar-engine/PLAN.md

数据湖与开放表格式(21 篇,已完成)

系列入口 →

Parquet / Arrow 列式文件格式,Iceberg 元数据树与提交协议,Delta 事务日志与 Hudi timeline 对照;对象存储 ACID、行级删除、catalog、查询引擎下推、流式 CDC 入湖与湖上向量。全 21 篇。

流式数据处理(18 篇,已完成,§14 学术加深)

系列入口 →

Kafka 日志与副本、Flink 事件时间与 watermark、窗口、RocksDB 状态与 checkpoint、端到端 exactly-once、Debezium CDC 与入湖深化;背压、生产故障模式与引擎选型对照。承接 lakehouse 第 19 章 入湖侧,补全实时计算层。全 18 篇;研究台账见 stream-processing/PLAN.md

分布式 OLAP 查询引擎(18 篇,已完成)

系列入口 →

闭合数据平台栈:SQL 前端与 Calcite 式优化、Volcano/向量化执行、Trino Coordinator/Worker 与 shuffle、Iceberg connector 下推与生产排查。承接 lakehouse 第 18 章 读湖视角。全 18 篇。

RocksDB 内核机制(18 篇,已完成)

系列入口 →

补全存储引擎三角:LevelDB 基线、RocksDB 写/读路径、SST/MANIFEST、Leveled/Universal compaction 与 write stall、Column Family、事务与 Checkpoint、Flink/TiKV 嵌入对照。与 lsm-tree DIYstream-processing 第 12 章 分工。全 18 篇。

向量检索引擎(19 篇,已完成)

系列入口 →

补齐 db-frontier ANN 算法篇与 llm-infra RAG 应用篇之间的引擎层:Milvus 2.6.x(Segment / WAL / Segcore / Knowhere / 混合过滤与一致性),Qdrant、Lance/LanceDB、pgvector 对照。全 19 篇;规划见 vector-engine/PLAN.md

Redis / 缓存内核(16 篇,已完成)

系列入口 →

补齐内存 KV / 缓存服务器内核层:ae 事件循环、redisObject 多态编码、TTL/maxmemory 近似淘汰、RDB/AOF 持久化、复制与 Cluster,Memcached 对照。与 architecture/17 应用模式、storage/66 多级缓存工程分工。全 16 篇;规划见 redis-kernel/PLAN.md

全文检索引擎(18 篇,已完成)

系列入口 →

补齐 搜索引擎架构向量检索引擎 / llm-infra RAG 之间的全文检索内核层:Lucene 9.x/10.x(Analyzer / FST / postings / BM25 / IndexWriter)+ Elasticsearch 8.x(Shard / refresh·translog / 查询路径),OpenSearch 对照。全 18 篇;规划见 search-engine/PLAN.md

TiKV / HTAP 内核(18 篇,已完成,§14 学术加深)

系列入口 →

补齐 RocksDB 单 Region LSM、Raft 解读db-frontier/12 HTAP 范式之间的工程链路:TiKV Region / Multi-Raft / raftstore / PD·TSO / Percolator,TiFlash Learner 新鲜度收束,CockroachDB 对照。全 18 篇;规划见 tikv-htap/PLAN.md

FoundationDB 内核(18 篇,已完成,§14 学术加深)

系列入口 →

承接 分布式 KV 对比TiKV / HTAP 内核 留下的严格可串行化分叉:拆解 Proxy / Sequencer / Resolver / TLog / Storage Server 的 Unbundled 写路径、OCC 严格可串行化、Redwood 与确定性模拟,以 Record Layer 和选型收束。全 18 篇;规划见 foundationdb/PLAN.md

SQLite 内核(17 篇,已完成,§14 学术加深)

系列入口 →

补齐嵌入式行存内核层:单文件格式、Pager / B-Tree、VDBE、Rollback Journal / WAL、锁状态机与计划器;与 postgresql-kernel / mysql-innodb 对照,DuckDB / RocksDB 作边界。承接 sqlite-billion-rows 性能叙事。全 17 篇;规划见 sqlite-kernel/PLAN.md

WiredTiger 内核(17 篇)

系列入口 →

补齐文档库默认引擎内核层:Cache / Eviction、B-Tree update chain、Reconciliation、Timestamps、History Store、Checkpoint / Journal、Rollback-to-Stable,以及 MongoDB 嵌入边界与 PG / InnoDB / RocksDB 对照。承接既有 History Store 机制文为第 08 篇。全 17 篇;规划见 wiredtiger/PLAN.md

LSM-Tree 实验与其它单篇

这一组文章偏“自己动手做一个数据库部件”:从日志、MemTable、SSTable、Bloom Filter、Compaction 到完整引擎,把抽象名词还原成可运行的代码路径。

当前 LSM 实验与其它单篇共 9 篇正文(WiredTiger History Store 已并入上列系列)。

推荐入口

目录

  1. 【从零写一个 LSM-Tree 存储引擎】Compaction:LSM-Tree 的心脏手术
  2. 【从零写一个 LSM-Tree 存储引擎】完整引擎 + Rust 重写对比
  3. 从零写一个 LSM-Tree 存储引擎
  4. 【从零写一个 LSM-Tree 存储引擎】LSM-Tree 全景:为什么要先写日志再排序
  5. 【从零写一个 LSM-Tree 存储引擎】SSTable + Bloom Filter:磁盘上的有序表
  6. 【从零写一个 LSM-Tree 存储引擎】WAL + MemTable:崩溃了也不丢数据
  7. 数据库 MVCC:快照隔离到底隔离了什么
  8. 持久化数据结构在数据库中的应用
  9. SQLite 是怎么做到十亿行每秒的
  10. 【WiredTiger 内核】History Store 与 Durable History
  11. 【WiredTiger 内核】系列入口

延伸阅读

同主题继续阅读

把当前热点继续串成多页阅读,而不是停在单篇消费。

2026-07-07 · database / storage

【RocksDB 内核机制】选型与存储栈阅读地图

用决策树收束 RocksDB 与 InnoDB、列存、湖仓的适用边界;给出存储引擎三角 + 数据平台全栈阅读地图,对接 query-engine/18 与 postgresql-kernel,并标注 HTAP/TiKV 续作入口。


By .