DeepSeek总结的 DuckDB 1.5.3:并非普通的补丁版本

来源:https://duckdb.org/2026/05/20/announcing-duckdb-153

DuckDB 1.5.3:并非普通的补丁版本

作者: DuckDB 团队
日期: 2026-05-20
阅读时间: 4 分钟

摘要: 我们发布了 DuckDB 版本 v1.5.3。尽管这是一个"补丁版本",但它通过其扩展带来了大量功能,首先是 Quack(现已作为核心扩展提供)、DuckLake 中对 Quack 的支持,以及 Iceberg、AWS 和 HTTPS 的若干新功能。

在这篇博文中,我们重点介绍了 DuckDB v1.5.3 中发布的一些重要特性,这是 DuckDB v1.5 系列中的第三个补丁版本。你可以在 GitHub 上找到完整的发布说明。

要安装新版本,请访问安装页面。

新特性

Quack 作为核心扩展

5 月 12 日,我们介绍了 Quack,这是我们新的远程协议,它将 DuckDB 转变为客户端-服务器数据库。如果你是 Quack 的新手,不知道从哪里开始,请查看以下资源:

  • 有关高级概述,请参阅 Quack 解释页面。
  • 有关 Quack 背后的原理和历史,以及协议及其特性的介绍,请参阅公告博文。
  • 有关参考手册和设置指南,请查看 Quack 文档。

从 DuckDB v1.5.3 开始,我们将 Quack 作为核心扩展发布。这意味着你现在可以从任何运行 DuckDB 的客户端立即开始使用 Quack:它将在首次使用时透明地自动安装和加载。

sql 复制代码
-- DuckDB 服务器
CALL quack_serve(
    'quack:localhost',
    token = 'super_secret'
);

CREATE TABLE hello AS
    FROM VALUES ('world') v(s);
text 复制代码
quack:
sql 复制代码
-- DuckDB 客户端
CREATE SECRET (
    TYPE quack,
    TOKEN 'super_secret'
);

ATTACH 'quack:localhost' AS remote;
FROM remote.hello;

请注意,Quack 仍处于测试阶段,协议、函数名称等可能会发生破坏性更改。我们计划在 2026 年秋季与 DuckDB v2.0 一起发布 Quack 的生产就绪版本。

带有 Quack 的 DuckLake

DuckLake 现在支持将带有 Quack 的 DuckDB 作为其目录数据库 (ducklake#1151)。让实例自己说话吧!

sql 复制代码
-- DuckDB 服务器
CALL quack_serve(
    'quack:localhost',
    token => 'oogieboogie'
);
text 复制代码
quack:
sql 复制代码
-- DuckDB 客户端
INSTALL ducklake;

CREATE SECRET (
    TYPE quack, TOKEN 'oogieboogie'
);
ATTACH 'ducklake:quack:localhost'
    AS lake (DATA_PATH 'data');
USE lake;

CREATE TABLE pond (
    id INT,
    species VARCHAR,
    weight DOUBLE
);
INSERT INTO pond VALUES
    (1, 'mallard', 1.2),
    (2, 'pintail', 0.9);
INSERT INTO pond VALUES
    (3, 'wood duck', 0.7);
SELECT * FROM pond ORDER BY id;

AWS 扩展特性

AWS 扩展现在支持用于服务账户 IAM 角色(IRSA)的 web_identity 链类型。这是通过社区成员 Marcel Steinbach (@mst) 的贡献实现的。

AWS 扩展现在还支持对运行在 RDS/Aurora 上的托管 PostgreSQL 数据库进行 IAM 身份验证。有关更多详细信息,请参阅文档中的 AWS RDS IAM 身份验证部分。

HTTPS 扩展的 HTTP_PROXY 变量

现在设置 HTTP_PROXY 环境变量也会设置 http_proxy DuckDB 配置选项 (duckdb#22541)。此选项确保扩展安装也能通过代理,这在例如使用防火墙的环境中可能会派上用场。

请注意,自从将 curl 引入 DuckDB 的网络栈以来,curl 会自动使用 HTTP_PROXYHTTPS_PROXY,因此现在当使用默认 curl 后端加载 httpfs 扩展时,DuckDB 也会隐式地处理这些参数。

Iceberg

DuckDB-Iceberg 扩展在 DuckDB v1.5.2 和 v1.5.3 之间发布了多项功能。最值得注意的是:

  • 现在支持对 Iceberg 表进行 MERGE INTO 操作 (iceberg#788)
  • 现在支持在带有截断或桶转换的分区 Iceberg 表上执行 INSERTUPDATE 语句 (iceberg#879)
  • 现在可以使用 ADBC 在 DuckDB-Iceberg 中执行 CTAS 语句 (iceberg#974)
  • 我们添加了 iceberg_schema_propertiesset_iceberg_schema_propertiesremove_iceberg_schema_properties 函数,以允许获取、设置和删除 Iceberg 模式属性 (iceberg#960)
  • 已为 Iceberg 表添加了 ALTER TABLE 支持 (iceberg#932, iceberg#928, iceberg#924, iceberg#912, iceberg#904, iceberg#853, iceberg#985, iceberg#981)
  • 已为 Iceberg 表添加了对 GEOMETRY 类型的支持 (iceberg#968, iceberg#902)

开发与内部

将 jemalloc 作为静态链接库发布

jemalloc 分配器现在作为核心 DuckDB 的一部分 (duckdb#22603),是一个静态第三方库,在 Linux 上默认包含并链接。以前 jemalloc 是一个静态链接的扩展------新的打包方式更清晰,因为其他 DuckDB 扩展可以动态加载。

DISABLE_EXTENSION_LOAD 标志

DISABLE_EXTENSION_LOAD 编译时标志已在 duckdb#22019 中修复。当使用此标志编译 DuckDB 时,将禁用加载扩展。

即将到来

未来几周我们将举办两场活动:

  • DuckCon #7。 6 月 24 日,我们将在阿姆斯特丹美丽的皇家热带学院举办下一次用户会议 DuckCon #7。
  • Ubuntu 峰会演讲。 下周,DuckDB Labs 的 Gábor Szárnyas 将在 Ubuntu 峰会上发表题为"DuckDB:非虚假科学"的演讲。是的,他的演讲将包括新的 Quack 协议。

结论

这篇文章是对 v1.5.3 中变更的简短总结。像往常一样,你可以在 GitHub 上找到完整的发布说明。

相关推荐
云商直通车4 小时前
华为云ECS购买与配置超详细教程
服务器·数据库·华为云
hj10434 小时前
fastadmin对接人大金仓 kingbase问题记录&解决
数据库
罗超驿4 小时前
19.告别复杂SQL!用MySQL视图把逻辑拆成“变量”式操作
数据库·mysql·面试
技术钱4 小时前
向量数据库的介绍
数据库
Gauss松鼠会4 小时前
GaussDB(DWS) 日常维护命令
服务器·数据库·postgresql·性能优化·gaussdb·经验总结
Trouvaille ~4 小时前
【Redis篇】初识 Redis:特性、应用场景与版本演进
数据结构·数据库·redis·分布式·缓存·中间件·持久化
码上有光4 小时前
MySQL基本查询
数据库·mysql·oracle·期末快速复习
Agent手记5 小时前
安全生产巡检全流程自动化与隐患预警方案:2026工业Agent落地实战指南
数据库·人工智能·安全·ai·自动化
whn19775 小时前
查询日期报错,参数DATETIME_FMT_MODE
数据库·sql