CodePie
所有课程课程价格产品理念关于作者
首页 / 从零实现 SQL 数据库

从零实现 SQL 数据库

从词法分析到查询执行,构建一个支持 SQL 语法的关系型数据库。涵盖 Lexer 词法分析、Parser 语法解析、执行引擎、磁盘存储引擎、MVCC 事务等核心主题。

Go / Rust / Java / C++43 章中等难度前 3 章免费
购买课程免费试读

课程简介

你每天都在写 SQL,但你知道 SELECT * FROM users WHERE age > 18 这条语句在数据库内部是怎么执行的吗?

本课程带你从零构建一个完整的关系型数据库。从 SQL 文本的词法分析开始, 逐步实现语法解析、查询计划、执行引擎、磁盘存储引擎、MVCC 事务、JOIN 优化, 最终构建出一个可以通过命令行交互、支持事务的 SQL 数据库。 麻雀虽小五脏俱全 -- 支持 CREATE TABLE、INSERT、SELECT、UPDATE、DELETE、JOIN、GROUP BY、ORDER BY 等完整 SQL 语法。

更新进度

43 / 43 章已全部更新已完结

学完这门课,你将掌握

理解 SQL 语句从文本到结果的完整执行链路:Lexer → Parser → AST → Planner → Executor
掌握编译原理的实战应用 -- 亲手实现一个递归下降 SQL 解析器
深入理解 MVCC 事务隔离 -- 快照读、版本链、提交回滚的完整实现
掌握磁盘存储引擎设计 -- KV 存储抽象、WAL 预写日志、数据持久化
理解查询优化 -- Hash Join、索引扫描 vs 全表扫描的取舍
具备阅读 SQLite、CockroachDB、TiDB 等数据库源码的基础能力

适合谁学习

后端工程师

每天写 SQL 但不知道底层发生了什么,想从"使用者"变为"理解者"

数据库爱好者

想理解 MySQL、PostgreSQL 等数据库的核心设计,为深入内核学习打基础

面试冲刺者

被问到"MVCC 怎么实现的""SQL 解析流程是什么"时能从实现层面深入回答

前置知识

熟悉 Go / Rust / Java / C++ 中的任意一门语言即可。不需要编译原理或数据库理论基础 -- 课程从 SQL 语法的基本概念讲起,每个模块都有清晰的文章讲解,代码从简到繁逐步演进。

你将构建什么

SQL 解析器

Lexer 词法分析 + Parser 语法解析

查询执行引擎

Planner + Executor 迭代器模型

磁盘存储引擎

KV 存储接口 + 磁盘持久化

MVCC 事务

多版本并发控制 + 快照隔离

架构概览

CLIENTSQLSERVERSQL EngineParserASTPlannerOptimizerPlan NodeExecutorStorage EngineMVCC

涉及的核心技术概念

词法分析 (Lexer)
递归下降语法解析
AST 抽象语法树
查询计划生成 (Planner)
查询优化 (Optimizer)
Volcano 火山迭代器模型
MVCC 多版本并发控制
快照隔离
事务提交与回滚
KV 存储抽象
磁盘持久化与 WAL
Hash Join 等值连接
GROUP BY / ORDER BY 聚合排序

学员评价

课程数据

43章节
4编程语言
6,000+行代码 / 每种语言
3免费章节
CodePie

动手构建真实系统,在实践中深入理解底层原理。

课程

  • 从零实现 KV 存储
  • 从零实现 SQL 数据库
  • 从零实现 AI Coding Agent

关于

  • 关于作者
  • 产品理念
  • 课程价格

联系我们

  • 微信:kiss_duan
  • 邮箱:roseduan7@163.com
  • 用户协议
  • 隐私政策
CodePie © 2026
KV StorageMemoryDiskCRUD