微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PostgreSQL 16 发布首个 Beta 版本

Postgresql 16 的第一个测试版现已可供下载。此版本包含 Postgresql 16 的所有功能预览,但 beta 版本的某些细节可能会在测试期间发生变化。

以下为 Postgresql 16 beta 1 主要功能亮点:

性能优化

此版本为 x86 和 ARM 架构引入了对使用 SIMD 的 cpu 加速的支持包括对处理 ASCII 和 JSON 字符串以及数组和子事务搜索的优化。此外,Postgresql 16 还为 Postgresql 的客户端库 libpq 引入了负载平衡。

Postgresql 16 包括查询执行方面的性能改进。此版本增加了更多查询并行性,包括允许并行执行 FULL 和 RIGHT 联接,以及并行执行 string_agg 和 array_agg 聚合函数

Postgresql 16 可以在 SELECT disTINCT 查询中使用增量排序。还有一些针对窗口查询的优化, RANGE 和 LIST 分区查找的改进,以及对 RIGHT 和 OUTER 查询中“反连接”的支持

Postgresql 16 还可以将使用 copY 并发批量加载数据的性能提高高达 300%。

逻辑复制增强

逻辑复制让 Postgresql 用户可以将数据实时流式传输到其他 Postgresql 或其他实现逻辑协议的外部系统。在 Postgresql 16 之前,用户只能在主实例上创建逻辑复制发布者。

Postgresql 16 增加了在备用实例上执行逻辑解码的能力,为用户提供了更多分配工作负载的选项,例如,使用比主实例繁忙的备用实例来逻辑复制更改。

Postgresql 16 还包括对逻辑复制的多项性能改进。包括允许订阅者并行应用大型事务,使用 PRIMARY KEY 以外的索引在 UPDATE 或 DELETE 操作期间执行查找,并允许在初始化期间使用二进制格式复制表。

开发者体验

Postgresql 16 继续实施用于操作 JSON 数据的 sql/JSON 标准,包括sql/JSON 构造函数(例如 JSON_ARRAY() 、 JSON_ARRAYAGG() 等)和身份函数 ( IS JSON ) 的支持

此版本还添加sql 标准 ANY_VALUE 聚合函数,该函数返回聚合集中的任意值。为方便起见,Postgresql 16 现在允许指定非十进制整数文字,例如 0xff 、 0o777 和 0b101010 ,并使用下划线作为千位分隔符,例如 5_432 。

此版本向 psql 客户端添加了对扩展查询协议的支持用户可以执行查询,例如 SELECT $1 + $2 ,并使用 bind 命令替换变量。

安全功能

Postgresql 16 继续让用户能够授予对功能的特权访问权限,而无需具有新预定义角色的超级用户。其中包括 pg_maintain ,它允许执行诸如 VACUUM 、 ANALYZE 、 REINDEX 等操作,以及 pg_create_subscription ,它允许用户创建逻辑复制订阅。此外,从这个版本开始,逻辑复制的订阅者作为表所有者而不是超级用户在表上执行事务。

Postgresql 16 现在允许在 pg_hba.conf 和 pg_ident.conf 文件中使用正则表达式来匹配用户名数据库名。此外,Postgresql 16 添加了在 pg_hba.conf 和 pg_ident.conf 中包含其他文件功能

Postgresql 16 还增加了对 sql 标准 SYstem_USER 关键字的支持,该关键字返回用于建立会话的用户名和身份验证方法

Postgresql 16 还增加了对 Kerberos 凭证委托的支持,它允许 postgres_fdw 和 dblink 等扩展使用经过身份验证的凭证连接到其他服务。

此版本还为客户端添加了几个新的面向安全的连接参数。包括 require_auth ,其中客户端可以指定它愿意从服务器接受哪些身份验证方法

现在可以将 sslrootcert 设置为 system ,以指示 Postgresql 使用客户端操作系统提供的受信任的证书颁发机构 (CA) 存储。

监控与管理

添加了几个新的监控功能包括提供有关 I/O 统计信息的新 pg_stat_io 视图。此版本还提供了最后一次扫描表或索引的时间戳。用于 pg_stat_activity 的归一化算法也有改进。

此版本包括页面冻结策略的改进,这有助于提高清理和其他维护操作的性能

改进了对文本排序规则的一般支持,它提供了文本排序方式的规则。

Postgresql 16 将 ICU 设置为认排序规则提供程序,还添加了对预定义的 unicode 和 ucs_basic 排序规则的支持

Postgresql 16 为 pg_dump 添加了额外的压缩选项,包括对 lz4 和 zstd 压缩的支持

其他变化

Postgresql 16 删除了 promote_trigger_file 选项以启用对备用数据库的提升。

Postgresql 16 引入了 Meson 构建系统,最终将取代 Autoconf。

启用 DirectIO 的开发人员标志,以及在订阅者中指定 origin=none 时使用逻辑复制在两个表之间进行双向复制的能力。

Postgresql 16 现在支持最低版本的 Windows 10。

 

Postgresql 16 beta 下载地址 | 发布公告,可在文档中查看 Postgresql 16 的所有新功能

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐