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

数据库内核实验索引

文章导航

分类入口
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

目录

数据库内核索引

本目录汇总九类数据库内核内容:生产级 RDBMS 源码拆解(PostgreSQL、MySQL InnoDB)、OLAP 列存引擎(ClickHouse / DuckDB)、数据湖与开放表格式(Parquet / Iceberg / Delta / Hudi)、流式数据处理(Kafka / Flink / 状态 / exactly-once)、分布式 OLAP 查询引擎(Trino / Spark / DuckDB / 优化与 MPP)、RocksDB 写优化 LSM 内核向量检索引擎(Milvus / Knowhere / Qdrant / Lance 对照)、Redis / 缓存内核(事件循环 / 对象编码 / 淘汰 / RDB·AOF / Cluster),以及 从零实现 LSM-Tree 的实验系列。

系列入口

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 篇。

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

系列入口 →

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

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

系列入口 →

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

LSM-Tree 实验与其它单篇

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

当前 LSM 实验与其它单篇共 9 篇正文。

推荐入口

目录

  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 是怎么做到十亿行每秒的

延伸阅读

同主题继续阅读

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

2026-07-07 · database / storage

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

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


By .