DuckDB在2012款MacBook Pro上的惊人表现:我们是否在分布式架构上浪费了十年?

2025-05-22
DuckDB在2012款MacBook Pro上的惊人表现:我们是否在分布式架构上浪费了十年?

本文通过在2012款MacBook Pro上运行DuckDB数据库并进行TPC-H基准测试,探讨了单机数据库性能的提升速度是否超过了数据规模的增长速度。结果显示,这款十年前的笔记本电脑可以完成复杂的分析型SQL查询,虽然速度比现代MacBook慢得多,但完成时间仍在可接受范围内。这引发了作者对过去十年中过度追求分布式数据分析架构的反思,认为单机数据库技术在当时已经具备处理大型数据集的能力,分布式架构的兴起可能并非完全必要。

阅读更多
开发

DuckDB 预览:轻松连接 Amazon S3 Tables 和 SageMaker Lakehouse

2025-03-18
DuckDB 预览:轻松连接 Amazon S3 Tables 和 SageMaker Lakehouse

DuckDB 宣布支持 Apache Iceberg REST Catalogs 的预览功能!这意味着用户可以轻松连接 Amazon S3 Tables 和 Amazon SageMaker Lakehouse,直接读取 Iceberg 表格数据。该功能由 AWS 和 DuckDB 团队合作开发,用户只需安装最新版 DuckDB 及相关扩展,并配置 AWS 凭证,即可通过简单的命令连接并查询数据,甚至支持 Iceberg 格式的模式演变。目前该功能为预览版,稳定版将于今年晚些时候发布。

阅读更多

DuckDB内置本地UI发布!

2025-03-12
DuckDB内置本地UI发布!

DuckDB团队和MotherDuck联合发布了DuckDB的内置本地UI!这个强大的Web界面可以直接在本地运行,无需安装额外的软件。它提供交互式笔记本、数据库浏览器、表格数据预览以及数据分析工具,让用户能更方便地操作DuckDB。所有查询都在本地进行,保证数据安全。该UI还支持连接MotherDuck云服务,实现数据共享与协作。

阅读更多
开发 本地UI

使用PEG实现运行时可扩展SQL解析器

2024-11-23
使用PEG实现运行时可扩展SQL解析器

本文讨论了如何利用解析表达式语法(PEG)改进SQL解析器,使其支持运行时扩展。传统SQL解析器基于过时的技术,难以适应新的语法和语言扩展。PEG解析器允许动态修改语法,支持语法扩展、新语句甚至全新查询语言,例如将dplyr集成到SQL解析器中。文章通过实验验证了PEG的可行性,并展示了其在添加UNPIVOT语句、扩展SQL/PGQ图模式以及改进错误消息方面的应用。虽然PEG解析器在原型阶段的性能略逊于传统解析器,但其灵活性和可扩展性为SQL解析器现代化提供了 promising 的方向。

阅读更多

优化器:低调的MVP——DuckDB

2024-11-16
优化器:低调的MVP——DuckDB

本文探讨了数据库查询优化器的重要性。作者比较了未优化、手动优化和DuckDB优化器优化的查询,展示了优化器如何显著提高查询性能,特别是对于复杂查询,例如涉及多表连接和过滤的查询。文章还解释了DuckDB优化器的一些关键规则,包括过滤器下推、连接顺序优化和TopN优化,以及这些规则如何协同工作以减少中间数据处理量并提高执行效率。此外,文章还强调了优化器相较于手动优化的优势:优化器能适应数据变化,自动调整查询计划,而手动优化则需要根据数据变化不断调整,难以维护。最后,文章列举了DuckDB优化器的一些其他规则,例如表达式重写、IN子句重写、统计信息传播等,并总结了优化器在数据库系统中的重要作用。

阅读更多
16
未分类 查询优化器

DuckDB 社区扩展发布

2024-07-05
DuckDB 社区扩展发布

DuckDB 推出了社区扩展仓库,方便用户使用 SQL 语句直接安装扩展。DuckDB 扩展的设计理念是在保持轻量级的同时,通过扩展机制提供丰富的功能。社区扩展仓库的推出简化了用户安装和开发者发布扩展的流程,扩展仓库提供各种平台的预编译扩展,并进行签名验证以确保安全。文章还介绍了如何使用社区扩展以及如何发布自己的扩展。

阅读更多
55
未分类

命令行数据处理:DuckDB 作为 Unix 工具

2024-06-20
命令行数据处理:DuckDB 作为 Unix 工具

这篇文章介绍了如何使用 DuckDB 作为命令行工具进行数据处理。文章首先回顾了 Unix 哲学,然后比较了 DuckDB 与传统 Unix 工具在数据处理方面的优缺点。文章使用了一些例子来演示如何使用 DuckDB 执行投影、排序、过滤、连接和替换等操作。最后,文章对 DuckDB 和传统 Unix 工具的性能进行了比较。

阅读更多
90
未分类

DuckDB 1.0.0正式发布

2024-06-03
DuckDB 1.0.0正式发布

DuckDB团队宣布正式发布DuckDB 1.0.0版本,代号为“雪鸭”。经过六年的开发,DuckDB已经拥有超过30万行C++引擎代码,积累了大量用户,下载量每月数百万次。1.0.0版本注重稳定性,解决了存储格式的兼容性问题,保证了未来版本的兼容性。DuckDB团队还获得了长期资金支持,计划进一步扩展扩展环境,并通过社区贡献的扩展来推动数据领域的革新。

阅读更多
65
未分类