PostgreSQL 16 开源 RDBMS 改进了性能、逻辑复制、监控和访问控制。
PostgreSQL 是一个功能强大的开源关系数据库管理系统 (RDBMS),以其稳健性、可伸缩性和可扩展性而闻名。它的各种扩展、工具以及对高级数据类型的支持使其成为 Web 应用程序、数据仓库、地理空间数据库等的流行选择。
随着 PostgreSQL 16 的发布,这个强大的数据库系统又实现了一次重大飞跃,巩固了其“世界上最先进的开源 RDBMS”的地位。
因此,让我们探讨一下这个新的主要版本如何提升数据库管理体验,使其比以往更加强大、高效和安全。
PostgreSQL 16 亮点
PostgreSQL 16
在 PostgreSQL 16 中,用户可以期待大量的增强和优化,旨在简化操作、促进数据复制、提供对系统性能的更深入洞察并增强数据安全性。
提高性能
在 PostgreSQL 中,查询规划器是查询执行过程的关键组件。它在确定执行 SQL 查询的最有效方式方面发挥着基础作用。
PostgreSQL 16 通过额外的查询规划器优化改进了其现有功能。现在,它可以并行化 FULL 和 RIGHT连接,为使用带有DISTINCT 或 ORDER BY子句 的聚合函数的查询生成更好的优化计划 。
最重要的是,此版本对SELECT DISTINCT查询使用增量排序,并优化窗口函数以加快运行速度。
最后,PostgreSQL 16 在 x86 和 ARM 架构中引入了基于 SIMD(单指令多数据)CPU 加速,从而提高了处理 ASCII 和 JSON 字符串以及数组和子事务搜索的速度。
逻辑复制
PostgreSQL 中的逻辑复制是一种以高度可定制和灵活的方式将数据更改从一个 PostgreSQL 数据库(“发布者”或“源”)复制到另一个 PostgreSQL 数据库(“订阅者”或“目标”)的方法。
与复制数据库的二进制数据文件的物理复制不同,逻辑复制工作在更高的抽象级别,以 SQL 语句或逻辑记录的形式复制更改。
PostgreSQL 16 建立在现有功能的基础上,因为用户可以从备用实例执行逻辑复制,这意味着备用实例现在可以将逻辑更改发布到其他服务器。
这为开发人员提供了新的工作负载共享替代方案,例如采用备用系统而不是更繁忙的主系统,以逻辑方式将更改复制到下游系统。
增强安全性
PostgreSQL 16 显着提高了开源数据库系统的访问控制和安全性。此版本引入了更强大的访问控制机制,为管理员在定义和管理用户权限方面提供了更大的灵活性。
它通过提供用户和数据库名称的正则表达式匹配以及外部配置文件的“ include ”指令,增强了“ pg_hba.conf ”和“ pg_ident.conf ”文件的管理。
此外,最新的 PostgreSQL 版本包括各种与安全相关的客户端连接设置,例如“ require_auth ”,它允许客户端指定它们可以从服务器接受哪些身份验证参数。
监控
精心调优的数据库系统可以最大限度地减少不必要的 I/O 操作,从而优化数据检索和存储效率。有鉴于此,优化数据库工作负载性能的一个基本方面在于深入了解它们对系统产生的深远影响。
在这方面,PostgreSQL 16 引入了“ pg_stat_io ”,这是用于精细 I/O 访问模式分析的基本 I/O 指标的新来源。最重要的是,它向“ pg_stat_all_tables ”视图添加了一个新字段,该字段记录表示上次扫描表或索引的时间戳。
当然,PostgreSQL 16 还包括许多其他有趣的新功能和改进。官方公告和发行说明包含了它们的完整列表。