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 语法。

更新进度

9 / 43 章已更新预计 2026 年 7 月前全部更新完毕

学完这门课,你将掌握

理解 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 EngineMVCCKV Storage

涉及的核心技术概念

词法分析 (Lexer)
递归下降语法解析 (Parser)
抽象语法树 (AST)
查询计划 (Planner)
迭代器执行模型
MVCC 多版本并发控制
快照隔离
KV 存储抽象
磁盘存储引擎
WAL 预写日志
Hash Join 优化
二进制行编码
Client / Server 架构
聚集函数与分组

学员评价

课程数据

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

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

课程

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

关于

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

联系我们

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