PostgreSQL 16 发布!


2023 年 9 月 14 日 - PostgreSQL 全球开发集团今天宣布发布 PostgreSQL 16,这是世界上最先进的开源数据库的最新版本。

PostgreSQL 16提高了性能,在查询并行性、批量数据加载和逻辑复制方面有显着改进。此版本为开发人员和管理员提供了许多功能,包括更多 SQL/JSON 语法、针对工作负载的新监控统计数据,以及定义访问控制规则以管理大型队列策略的更大灵活性。

性能改进
PostgreSQL 16 通过新的查询规划器优化提高了现有 PostgreSQL 功能的性能。

在最新版本中:

  • 查询规划器可以并行处理 FULL 和 RIGHT 连接,
  • 为使用带有 DISTINCT 或 ORDER BY 子句的聚合函数的查询生成更好的优化计划,
  • 为 SELECT DISTINCT 查询使用增量排序,并优化窗口函数,使其执行效率更高。
  • 它还改进了 RIGHT 和 OUTER "反连接",使用户能够识别连接表中不存在的行。

逻辑复制
逻辑复制可让用户将数据流传输到其他能解释 PostgreSQL 逻辑复制协议的 PostgreSQL 实例或用户。在PostgreSQL 16中,用户可以从备用实例执行逻辑复制,这意味着备用实例可以向其他服务器发布逻辑变更。这为开发人员提供了新的工作负载分配选择,例如,使用备用实例而不是更繁忙的主实例将逻辑变更复制到下游系统。

此外,PostgreSQL 16 还对逻辑复制的性能进行了多项改进。订阅者现在可以使用并行工作者应用大型事务。对于没有主键的表,用户可以使用 B 树索引而不是顺序扫描来查找行。在某些条件下,用户还可以使用二进制格式加快初始表同步。

PostgreSQL 16 对逻辑复制的访问控制进行了多项改进,其中包括新的预定义角色 pg_create_subscription,它赋予用户创建新逻辑订阅的能力。

最后,该版本开始添加对双向逻辑复制的支持,引入了在来自不同发布者的两个表之间复制数据的功能。