Skip to content

CORE CONCEPTS · 分析型 · 嵌入式 OLAP

DuckDB 核心知识

DuckDB 把列式向量化分析带进单个进程。学习重点是文件扫描、向量化执行、内存/溢写和扩展安全。

学完应该能做到

  • 能直接查询 Parquet 并利用裁剪
  • 能控制内存与临时目录
  • 能理解嵌入式并发边界

三个必须建立的心智模型

01

向量化执行

算子按数据块处理列向量,减少函数调用和缓存浪费,适合聚合与扫描。

  • 观察 EXPLAIN ANALYZE
  • 避免逐行 UDF
  • 利用并行扫描
02

文件即数据源

CSV、Parquet、JSON、Arrow 可直接参与 SQL;投影和谓词下推决定读取量。

  • 优先 Parquet
  • 核对远程对象存储凭证
  • 避免自动类型推断误判
03

嵌入式运行

DuckDB 与应用共享进程资源,不提供独立多租户服务器语义。

  • 限制 memory_limit
  • 设置 temp_directory
  • 连接级并发要符合宿主模型

把知识落到工程决策

建模前

先写出访问模式、正确性边界、数据生命周期和故障预算,再决定表、键、索引或分区。

上线前

使用接近生产的数据分布与并发压测,记录查询计划、资源水位和恢复时间作为基线。

运行中

监控延迟分位数、容量增长、后台维护与复制健康;报警必须能映射到可执行处置步骤。

Released under the MIT License.