性能炸裂, DuckDB 将放弃 Parquet 转头 Vortex?
性能炸裂, DuckDB 将放弃 Parquet 转头 Vortex
原文: https://duckdb.org/2026/01/23/duckdb-vortex-extension
Parquet 的头号劲敌?DuckDB 正式官宣支持 Vortex:查询提速 35%,性能直接起飞!
01 Parquet 统治的时代要终结了?
如果你做过大数据分析,一定被 CSV 这种“远古格式”折磨过,也一定感受过 Parquet 带来的效率革命。但时代变了,Parquet 的一个致命弱点正日益凸显:块压缩(Block-compressed) 。
简单来说,现有的引擎在进行过滤、解码等操作前,必须先对数据页进行解压。这就好比你想在快递盒里找个钥匙,必须先把整箱胶带撕开。
Vortex 应运而生。
这是由 SpiralDB 团队打造、并于 2025 年捐赠给 Linux 基金会的开源列式格式。今天,DuckDB 官方宣布:正式支持 Vortex!
02 为什么 Vortex 这么快?“黑科技”揭秘
Vortex 不只是另一个 Parquet,它在底层逻辑上完成了跨代进化:
“不解压,直接算”: 借助 ALP(浮点数)和 FSST(字符串)等轻量级编码,Vortex 可以在不解压的情况下运行计算。这意味着“在存储层直接过滤数据”成为了现实。 延迟物化(Late Materialization): 数据只有在最后一步进入 CPU 或 GPU 时才会被解压,最大化利用硬件带宽。 万物皆可列式: 它不仅针对 SQL,还专门优化了向量、长文本、甚至图像和音频流,天生为 AI 和大模型训练而生。 Wasm 嵌入: 你甚至可以将 WebAssembly 代码嵌入文件中,直接在存储端跑自定义算法。
03 性能实测:数据从不撒谎
为了验证 Vortex 是否真的能打,我们在 Mac M1 (10核/32GB) 环境下,针对 TPC-H Scale Factor 100(约 20GB 数据量)进行了严苛测试。
我们将 Vortex 与 Parquet v1/v2 进行了 5 轮“冷启动”对比。结果令人惊喜:
核心数据对比
| Parquet v1 | 慢 35% | |||
| Parquet v2 | 慢 18% | |||
| Vortex (New) | 1.50 | 43.80 | 王炸级别 | 极稳 (0.07) |
关键结论: > * Vortex 的查询速度比 Parquet v2 快 18% ,比 Parquet v1 快 35% 。
更惊人的是稳定性:Vortex 的多次运行波动极小,几乎不受缓存机制的干扰。
存储空间表现
在存储体积上,Vortex 在未使用通用压缩算法的前提下,依然保持了极高的竞争力:
Parquet v2 (Snappy压缩): 25.40 GB Vortex (轻量编码): 28.57 GB 注:Vortex 牺牲了极小的空间,换取了巨大的计算增益。
04 如何在 DuckDB 中开启“暴走模式”?
由于 DuckDB Labs 的深度参与,现在 Vortex 已经是 DuckDB 的“头等公民”。使用起来极其丝滑:
-- 1. 安装并加载
INSTALL vortex;
LOAD vortex;
-- 2. 像写 Parquet 一样写 Vortex
COPY (SELECT * FROM my_table) TO'data.vortex' (FORMAT vortex);
-- 3. 极速读取
SELECT * FROM read_vortex('data.vortex');
05 总结:AI 时代的新标准
无论你是处理传统的 SQL 分析,还是在跑 ML 数据预处理流水线,亦或是进行 AI 模型训练,Vortex + DuckDB 的组合都提供了一个更高效的选项。
Vortex 自 v0.36.0 以来已保持了超过半年的向后兼容性,目前已迭代至 v0.56.0。大数据领域的格式之争,好戏才刚刚开始。
你想在下一个项目中尝试 Vortex 吗?欢迎在评论区分享你的看法!