2022 年 10 月 13 日 - PostgreSQL 全球开发组今天宣布发布 PostgreSQL 15,这是世界上 最先进的开源数据库 的最新版本。
PostgreSQL 15 在最近版本性能改进的基础上,在本地和分布式部署中管理工作负载的性能有了显著提升,包括改进的排序功能。此版本通过添加流行的 MERGE
命令,改善了开发人员的体验,并增加了更多观察数据库状态的功能。
PostgreSQL 核心团队成员 Jonathan Katz 表示:“PostgreSQL 开发人员社区不断构建简化高性能数据工作负载运行的功能,同时改善开发人员的体验。PostgreSQL 15 突出了我们如何通过开源软件开发,为我们的用户提供一个非常适合应用程序开发并且对其关键数据安全可靠的数据库。”
PostgreSQL 是一个以其可靠性和健壮性而闻名的数据管理创新系统,受益于 全球开发人员社区 超过 25 年的开源开发,已成为各种规模组织首选的开源关系数据库。
在此最新版本中,PostgreSQL 改进了其内存和磁盘 排序 算法,基准测试显示,根据排序的数据类型不同,速度提升了 25% - 400%。使用 row_number()
、rank()
、dense_rank()
和 count()
作为 窗口函数 在 PostgreSQL 15 中也具有性能优势。现在可以 并行执行 使用 SELECT DISTINCT
的查询。
在 先前 PostgreSQL 版本 允许异步远程查询的基础上,PostgreSQL 外部数据包装器,postgres_fdw
,现在支持 异步提交。
PostgreSQL 15 的性能改进扩展到了其归档和备份功能。PostgreSQL 15 增加了对 LZ4 和 Zstandard (zstd) 压缩写入预写日志 (WAL) 文件 的支持,这对于某些工作负载可以同时提高空间利用率和性能。在某些操作系统上,PostgreSQL 15 增加了对 预取 WAL 中引用的页面 的支持,以帮助加快恢复时间。PostgreSQL 的内置备份命令 pg_basebackup
现在支持使用 gzip、LZ4 和 zstd 选择对备份文件进行服务器端压缩。PostgreSQL 15 包括使用 自定义模块进行归档 的能力,这消除了使用 shell 命令的开销。
PostgreSQL 15 包括 SQL 标准的 MERGE
命令。MERGE
允许您编写条件 SQL 语句,该语句可以在单个语句中包含 INSERT
、UPDATE
和 DELETE
操作。
此最新版本添加了 使用正则表达式检查字符串的新函数:regexp_count()
、regexp_instr()
、regexp_like()
和 regexp_substr()
。PostgreSQL 15 还扩展了 range_agg
函数以聚合 multirange
数据类型,该数据类型在 先前版本 中引入。
PostgreSQL 15 允许用户 创建使用调用者权限(而非视图创建者权限)查询数据的视图。此选项称为 security_invoker
,它增加了一层额外的保护,以确保视图调用者具有使用底层数据的正确权限。
PostgreSQL 15 为管理 逻辑复制 提供了更大的灵活性。此版本为 发布者 引入了 行过滤 和 列列表,允许用户选择从表中复制数据的子集。PostgreSQL 15 添加了一些功能来简化 冲突管理,包括跳过重放冲突事务以及在检测到错误时自动禁用订阅的能力。此版本还包括支持将两阶段提交 (2PC) 用于逻辑复制。
PostgreSQL 15 引入了一种新的日志记录格式:jsonlog
。这种新格式使用定义的 JSON 结构输出日志数据,允许在结构化日志记录系统中处理 PostgreSQL 日志。
此版本为数据库管理员提供了更大的灵活性,使其可以控制用户如何管理 PostgreSQL 配置,增加了授予用户更改服务器级配置参数的权限的能力。此外,用户现在可以使用 psql
命令行工具中的 \dconfig
命令搜索有关配置的信息。
PostgreSQL 服务器级统计信息 现在在共享内存中收集,从而消除了统计信息收集器进程和定期将此数据写入磁盘的操作。
PostgreSQL 15 使得可以将 ICU 排序规则 设置为集群或单个数据库的默认排序规则。
此版本还添加了一个新的内置扩展 pg_walinspect
,允许用户直接从 SQL 界面检查预写日志文件的内容。
PostgreSQL 15 还 撤销了除数据库所有者以外的所有用户对 public
(或默认)模式的 CREATE
权限。
PostgreSQL 15 从 PL/Python 中删除了长期弃用的“独占备份”模式和对 Python 2 的支持。
PostgreSQL 是世界上最先进的开源数据库,拥有由数千名用户、贡献者、公司和组织组成的全球社区。PostgreSQL 建立在加州大学伯克利分校 35 多年的工程设计基础上,并以无与伦比的发展速度不断发展。PostgreSQL 成熟的功能集不仅与顶级专有数据库系统相匹配,而且在高级数据库功能、可扩展性、安全性和稳定性方面超越了它们。