什么是 DuckDB?
DuckDB 是一款快速的进程内分析型 SQL 数据库——可以把它看作“分析领域的 SQLite”。它在调用方进程内运行,无需搭建任何服务器,可直接查询 CSV、Parquet 和 JSON 文件(SELECT * FROM 'data.parquet'),并提供丰富、友好的 SQL 方言,在分析型工作负载上性能出色。本软件包提供官方 duckdb CLI。
duckdb 即可。同样因为这个原因,一个数据库文件同一时间只属于一个进程。
apt upgrade 即可始终保持最新版本。
⚡ DuckDB 的主要特性
📊 为分析而生
列式、向量化引擎每秒处理数百万行——以 OLAP 速度完成聚合、连接和窗口函数。
📁 直接查询文件
SELECT * FROM 'events.parquet'——CSV、Parquet 和 JSON 无需任何导入步骤即可查询(和写入)。
🪶 零配置
像 SQLite 一样运行在进程内:一个二进制文件、一个可选的数据库文件,无需任何管理。
🔌 运行时扩展
INSTALL httpfs; 从官方仓库拉取签名扩展——S3/HTTP 访问、空间数据、全文搜索等等。
🗣️ 友好的 SQL
SELECT * EXCLUDE、GROUP BY ALL、list/struct 类型、PIVOT——一种为日常查询去除样板代码的现代方言。
🤝 与其他系统协作
通过扩展读取 SQLite、PostgreSQL 和 MySQL;导出 Parquet/CSV/JSON——是数据流水线的理想粘合剂。
🏆 为什么用 apt 安装(而不是 snap 或手动下载)?
- 扩展开箱即用:本软件包使用上游官方 glibc 构建,因此
INSTALL httpfs;与官方linux_amd64/linux_arm64扩展仓库完全匹配 - 覆盖包括各 LTS 在内的每个发行版:官方 Ubuntu 软件源不提供 DuckDB——在这里从 Jammy 到 Resolute 都能获得同样的最新版本
- 告别 curl 下载二进制:使用 GPG 签名的仓库,而不是手动把二进制文件下载到
/usr/local/bin - 自动更新:上游新版本随您日常的
apt upgrade一同到达 - 多架构支持:amd64 和 arm64——即上游发布 Linux CLI 二进制文件的架构
📦 从 deb.griffo.io 安装
步骤 1:添加仓库
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt updateinstall -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt update步骤 2:安装 DuckDB
sudo apt install -y duckdbapt install -y duckdb🚀 首次运行
duckdb # in-memory interactive shell
duckdb mydb.duckdb # persistent database file
duckdb -c "SELECT * FROM 'events.parquet' LIMIT 10;" # query files directly
duckdb -c "INSTALL httpfs; LOAD httpfs;" # extensions from the official repo📦 软件包构建仓库
Ubuntu 软件包在此 GitHub 仓库中自动构建和维护:
- 📂 duckdb-debian - 最新发布版本构建
🔗 相关软件包
也可从 deb.griffo.io 获取:
- garage - 兼容 S3 的对象存储——可通过 httpfs 从 DuckDB 直接查询
- tigerbeetle - 分布式金融交易数据库
- yq - 命令行上的 YAML/JSON/CSV 处理利器
💝 支持本项目
如果这个仓库为您节省了时间和精力,请考虑支持它!