跳转至

CMU 15-445 数据库系统

课程概述

CMU 15-445 是卡内基梅隆大学 Andy Pavlo 教授主讲的数据库系统核心课程,是数据库领域最受欢迎的公开课程之一。课程系统讲解了数据库管理系统(DBMS)的内部实现原理,涵盖存储引擎、查询处理、并发控制、事务管理等关键主题。

本笔记 基于课程视频与课件整理,以中文为主,辅以代码示例和图解,适合作为复习参考或快速回顾。


学习目标

学完本课程应掌握的核心能力

  • 关系模型:理解关系代数、SQL 语法、数据完整性约束
  • 存储引擎:掌握页式存储、缓冲池管理、数据表示方式
  • 查询处理:了解查询优化、执行计划、索引结构
  • 事务管理:熟悉并发控制、恢复机制、ACID 语义

Lecture 导航

  • Lecture 1 — 关系模型与关系代数


    数据库基础概念:关系模型(Relational Model)、主键/外键、DML 语言分类,以及关系代数核心操作(σ、π、∪、∩、×、⋈)。

    阅读笔记

  • Lecture 2 — 高级 SQL


    DDL/DML/DCL 语句分类,聚合函数(COUNT、AVG、SUM)、GROUP BY / HAVING、字符串操作、日期函数、嵌套查询、输出控制(ORDER BY、LIMIT)。

    阅读笔记

  • Lecture 3 — 数据库存储(一)


    存储层次结构(Registers → Network Storage)、Disk-Oriented DBMS、数据库页与堆文件组织(链表 vs 页目录)、Slotted Page 与 Log-Structured 布局。

    阅读笔记

  • Lecture 4 — 数据库存储(二)


    文件组织(Slotted Pages、Log-Structured)、元组数据表示(Integer、Float、Decimal、String)、大值存储与外部存储方案。

    阅读笔记


参考资源

  • 课程官网CMU 15-445/645
  • 视频:YouTube Andy Pavlo 频道
  • 教材Database Internals by Alex Petrov