暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

PostgreSQL 16 Beta 1 发布

原创 pgbase 2023-05-27
328

PostgreSQL 16 特性增强

性能

PostgreSQL 16在查询执行方面做了很多增强。本次发布增加了更多查询并行,包括全连接和右连接支持并行执行,以及string_agg和array_agg函数支持并行执行。另外,PostgreSQL 16在剔重查询中使用了增量排序算法。同时,开窗函数查询方面做了诸多优化,对范围和列表分区查找做了很多改进,在右连接和外连接关联方法中支持反连接。

PostgreSQL 16同时将COPY并发批量加载数据性能提升了300%。

在X86和ARM架构下,通过引入SIMD向量指令集来加速CPU,包括ASCII和JSON字符串处理、数组和自事务检索等方面做了优化。另外,PostgreSQL 16在客户端类库libpq中引入负载均衡功能。

逻辑复制增强

逻辑复制功能允许用户将PostgreSQL中数据实时复制到其他PostgreSQL实例或者其他支持逻辑复制协议的外部系统。PostgreSQL 16版本前,用户只能在主实例上创建复制发布者。PostgreSQL 16支持在standby实例上进行逻辑解码,这给用户更多的选择来分散系统的负载,例如,使用一个比主实例空闲的standby做逻辑复制发布者。

PostgreSQL 16还包含诸多逻辑复制性能改进。这些改进包括允许订阅者并行重放大事务,使用索引而非主键来查找更新和删除操作,支持使用二进制数据格式完成逻辑复制初始化。

开发者体验

PostgreSQL 16继续实现操作JSON数据的SQL/JSON标准,包括支持SQL/JSON构建器和身份函数。本次发布同时还增加ANY_VALUE聚集函数,该函数可以返回聚集集合中的任意值。为方便起见,PostgreSQL 16允许指定非数值字符串,例如0xff,0o777以及0b101010,使用下划线表示千分位,例如5_432。

本次发布为psql客户端增加了扩展查询协议。用户能执行一个查询,如SELECT $1 + $2,使用bind命令替代变量。

安全特性

PostgreSQL 16继续通过增加新的预定义角色给用授权访问的能力,完全不需要superuser权限。新增的预定义角色包括pg_maintain,用于控制vacuum,analyze,reindex等操作权限,还有pg_create_subscription角色,用于控制创建逻辑复制发布者权限。另外,从本次发布开始,逻辑复制发布者作为表的owner在一个表上执行事务,而非superuser。

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来进行用户认证。

监控与管理

PostgreSQL 16增加了多个监控特性,包括用于支持I/O统计信息的新视图pg_stat_io。本次发布还增加了表和视图最后一次扫描的时间戳。另外,对pg_stat_activity采用的规范化算法做了增强。

本次发布对页冻结策略做了增强,有助于提升vacuum和其他维护操作性能。PostgreSQL 16还对文本排序规则做了增强。PostgreSQL 16将ICU设置为默认字符序默认选项。

PostgreSQL 16为pg_dump 增加了额外的压缩选项,包括lz4和zstd压缩算法。

其他重要变更

PostgreSQL 16移除promote_trigger_file选项,该选项用于激活从库提升主库。用户可以使用pg_ctl promote命令或者pg_promote()函数来提升从库。

PostgreSQL 16引入Meson构建体系,在不久将来会替代Autoconf。本次发布同时加入很多在未来发布会增强的开发特性。包括开启DirectIO的开发者标记,以及当订阅者指定 orgin=none参数时,逻辑复制支持两表复制的能力。

  1. 针对Windows平台安装,PostgreSQL 16现在支持Windows 10的最小版本。
最后修改时间:2023-06-13 15:08:25
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论