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 上找到完整的发布说明。

相关推荐
zzqssliu3 分钟前
Taocarts接口限流实操:基于Redis实现API防刷与流量管控
数据库·redis·缓存
啦啦啦啦啦zzzz24 分钟前
redis的持久化操作和主从复制与集群的关系及其应用
数据库·redis
IT策士39 分钟前
Redis 从入门到精通:分片之道 —— Redis Cluster
数据库·redis·缓存
AOwhisky1 小时前
学习自测与解析:Redis系列第一期与第二期核心知识点详解
运维·数据库·redis·学习·云计算
kishu_iOS&AI2 小时前
LLM —— Milvmus向量数据库
数据库·人工智能·milvus
名不经传的养虾人2 小时前
从0到1:企业级AI项目迭代日记 Vol.46|三个检索源、缓存限流、深度整合——联网检索一日冲刺
数据库·人工智能·agent·ai编程·ai工作流·企业ai
BugShare2 小时前
Mac 上原生开发的开源免费、尽享丝滑数据库工具
数据库·macos·开源
Java爱好狂.2 小时前
阿里1658页2026最新Java面试题总结(含答案)
数据库·redis·程序员·java面试·java面试题·java编程·java八股文
jieyucx2 小时前
《Go 数据库编程开篇:彻底打通 database/sql 与 MySQL 驱动的连接池调优密码》
数据库·sql·golang
白露与泡影2 小时前
深入理解MySQL事务隔离级别:MVCC机制与Next-Key Lock如何解决幻读问题?
数据库·mysql