DB · 数据库与存储
数据持久化全栈:关系模型、索引、事务、缓存、NoSQL、分片、搜索——以及面向 AI/RAG 的向量检索。
最后更新:2026-10
在本知识库中的位置:database/ 是从 C 后端域 拆出的独立域。存储足够深(MySQL/Redis/ES/分库分表),单列便于系统覆盖;后端只讲"怎么用",本域讲"内部原理与选型"。
上层索引见 ../../README.md。
文档地图
database/
├── 01-关系模型与SQL基础 ✅已写 集合思维 / JOIN / 子查询 / GROUP BY / 窗口函数
├── 02-索引原理与优化 ✅已写 B+树 / 覆盖索引 / 最左匹配 / EXPLAIN
├── 03-事务与隔离级别 ✅已写 ACID / 脏读·不可重复读·幻读 / MVCC
├── 04-Schema设计与范式反范式 ✅已写 范式防冗余 / 反范式换性能 / 建表陷阱
├── 05-Redis与缓存模式 ✅已写 Cache-Aside / Read-Through / 延迟双删
├── 06-缓存三大问题 ✅已写 击穿 / 穿透 / 雪崩与兜底
├── 07-NoSQL选型 ✅已写 文档 / 列族 / 图 / 键值与关系型分工
├── 08-分库分表与读写分离 ✅已写 拆分维度 / 路由 / 分布式 ID / 代价
├── 09-搜索引擎ES入门与场景 ✅已写 倒排索引 / MySQL 是事实源 / 引入时机
├── 10-数据迁移与双写 ✅已写 全量 / 增量 / 双写 / 校验 / 灰度切换
└── 11-pgvector向量检索 ✅已写 在 Postgres 里做向量检索(服务 AI/RAG)编号从
DB11起、先写向量检索,是因为它直接服务 AI/RAG 主线;DB01~DB10 本域主体已补齐。
按角色推荐的阅读路线
我在做 RAG,要选向量存储
11 pgvector → [实操 02 RAG 实战](../../pages/AI/practice/02-RAG实战-可溯源问答系统.md) → [实操 08 检索进阶](../../pages/AI/practice/08-检索进阶-混合检索与重排.md)先判断 pgvector 够不够,再去看它在 RAG 链路里的位置。
我要系统补存储
DB01 关系模型 → DB02 索引 → DB03 事务 → DB05 Redis → DB08 分库分表阅读约定
| 标记 | 含义 |
|---|---|
[易变] | 版本特性(如 pgvector 的 iterative_scan)变化快,以官方文档为准 |
| 调参类 | 本域偏实操,参数都给"默认值 + 为什么调 + 调到多少" |
维护建议
| 内容类型 | 建议刷新频率 |
|---|---|
| DB11 pgvector(版本特性) | 每半年 |
| DB01~DB10(原理类) | 每 1~2 年 |
详细篇目与待写清单见 plan/database.md。