DuckDB 源码剖析 (1) - DuckDB 文件格式总览
摘要
DuckDB文件由3个4KB头块和多个256KB数据块组成,采用双头块轮转机制确保数据一致性。元信息通过4088B的Meta Block链表存储,每个数据块容纳64个Meta Block。Catalog和Free List作为核心元数据,分别记录数据字典和空闲块信息。Meta Block通过8B指针串联,支持大容量元信息存储。Checkpoint时更新头块指针并释放旧Meta Block空间,优化存储效率。表数据存储细节将在后续文章中详解。