DuckDB 内部设计与实现
Design and implementation of DuckDB internals

原始链接: https://duckdb.org/library/design-and-implementation-of-duckdb-internals/

托斯滕·格鲁斯特(Torsten Grust)在图宾根大学开发了一门为期15周的本科课程,专注于DuckDB数据库系统的内部运作。课程材料,包括幻灯片,已在GitHub上公开提供。 “数据库系统内部设计与实现”(DiDi)课程涵盖了查询性能、内存管理、聚合、排序、索引、查询计划和优化等关键领域——特别是利用DuckDB的架构。 虽然一个学期无法提供全面的概述,但该课程提供了对数据库内部运作的实践探索。 期望学生具备基本的SQL知识,但查询主要集中在核心SQL概念上。需要SQL介绍的学生可以参加配套课程“表格数据库系统”。 这门课程提供了一种实践方法来理解现代数据库系统的工作原理。

Hacker News 新闻 | 过去 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 DuckDB 内部设计与实现 (duckdb.org) 5 分,mpweiher 发表于 1 小时前 | 隐藏 | 过去 | 收藏 | 2 条评论 帮助 viccis 2 分钟前 [–] 我是否遗漏了什么,或者内容是空的?回复 esafak 0 分钟前 | 父评论 [–] https://github.com/DBatUTuebingen/DiDireply 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请 YC | 联系 搜索:
相关文章

原文
Torsten Grust (University of Tübingen)

2026-03-19

A DuckDB-based course on the Design and Implementation of Database System Internals (“DiDi”).

The slides and auxiliary material are available in the GitHub repository.

This lecture material has been developed by Torsten Grust to support a 15-week course for undergraduate students of the Database Research Group at University of Tübingen (Germany).

The course treads on a path through selected internals of the DuckDB relational database system. 15 weeks do not suffice to exhaustively discuss all interesting bits and pieces of the DuckDB kernel. As of March 2026, the chapter layout reads as follows:

  1. Welcome & Setup
  2. The Query Performance Spectrum
  3. Managing Memory + Grouped Aggregation
  4. Sorting Large Tables
  5. The ART of Indexing
  6. Query Execution Plans and Pipelining
  7. Vectorized Query Execution
  8. Query Rewriting and Optimization

You will need basic SQL skills to follow the course's red thread and auxiliary material. There are few queries that go beyond the core SELECT-FROM-WHERE-GROUP BY-HAVING block, however. Should you require an introduction to the tabular data model and its query language SQL, you may find the companion course Tabular Database Systems helpful.

联系我们 contact @ memedata.com