PostgreSQL 全球开发组今日宣布发布 PostgreSQL 13,这是世界上 最先进的开源数据库 的最新版本。
PostgreSQL 13 在其索引和查找系统方面进行了重大改进,这将使大型数据库受益,包括索引的空间节省和性能提升、使用聚合或分区的查询响应时间更快、使用增强统计信息的查询计划更好,以及更多。
除了备受期待的功能,如 并行 vacuum 和 增量排序 外,PostgreSQL 13 还通过针对日常管理的优化、为应用程序开发者提供更多便利以及安全增强,为大小工作负载提供了更好的数据管理体验。
PostgreSQL 核心团队成员 Peter Eisentraut 表示:“PostgreSQL 13 展示了我们全球社区在推进世界上最先进的开源关系型数据库能力方面的合作和奉献精神。“每次发布带来的创新以及其在可靠性和稳定性方面的声誉,是越来越多的人选择 PostgreSQL 来构建其应用程序的原因。”
PostgreSQL 是一种创新的数据管理系统,以其可靠性和健壮性而闻名,它受益于 全球开发者社区 超过 25 年的开源开发,已成为各种规模组织的优选开源关系型数据库。
基于前一个 PostgreSQL 版本的工作,PostgreSQL 13 可以高效地处理 B-tree 索引中的重复数据,这是标准的数据库索引。这降低了 B-tree 索引所需的总体空间使用量,同时提高了整体查询性能。
PostgreSQL 13 引入了增量排序,即查询中较早步骤的排序数据可以加速较后步骤的排序。此外,PostgreSQL 现在可以使用 扩展统计信息 系统(通过 CREATE STATISTICS 访问)来为具有 OR 子句以及列表上的 IN/ANY 查找的查询创建改进的计划。
在 PostgreSQL 13 中,更多类型的 聚合 和 分组集 查询可以利用 PostgreSQL 高效的哈希聚合功能,因为具有大型聚合的查询不必完全放入内存。具有 分区表 的查询获得了性能提升,因为现在有更多情况可以修剪分区以及直接连接分区。
Vacuuming 是 PostgreSQL 管理的重要组成部分,它允许数据库在行被更新和删除后回收存储空间。这个过程也可能带来管理上的挑战,尽管先前的 PostgreSQL 版本已经在这方面做了一些工作来减轻 vacuuming 的开销。
PostgreSQL 13 通过引入 索引的并行 vacuum 继续改进 vacuuming 系统。除了提供 vacuuming 性能优势外,这种新功能的用法还可以针对特定工作负载进行调整,因为管理员可以选择要运行的并行工作进程的数量。除了这些性能优势之外,数据插入现在还可以触发自动 vacuum 进程。
(用于防止写前日志 (WAL) 在被副本接收之前被移除的) 复制槽 在 PostgreSQL 13 中可以进行调整,以指定 要保留的最大 WAL 文件数,并帮助避免磁盘空间不足的错误。
PostgreSQL 13 还增加了管理员监控数据库活动的方法,包括通过 EXPLAIN 引用 WAL 使用情况统计信息、流式基础备份的进度以及 ANALYZE 命令的进度。此外,可以使用新的 pg_verifybackup 命令来检查 pg_basebackup 命令输出的完整性。
PostgreSQL 13 使与来自不同数据源的 PostgreSQL 数据类型一起工作更加容易。此版本在其 SQL/JSON 路径支持中添加了 datetime() 函数,该函数将有效的时间格式(例如 ISO 8601 字符串)转换为 PostgreSQL 原生类型。此外,UUID v4 生成函数 gen_random_uuid() 现在可用,无需安装任何扩展。
PostgreSQL 的分区系统更加灵活,因为分区表完全支持逻辑复制和行级 BEFORE 触发器。
PostgreSQL 13 中的 FETCH FIRST 语法现在已扩展到包含 WITH TIES 子句。指定 WITH TIES 时,将包含基于 ORDER BY 子句与结果集中最后一个行“并列”的任何行。
PostgreSQL 的扩展系统是其健壮性的关键组成部分,因为它允许开发人员扩展其功能。在以前的版本中,新扩展只能由数据库超级用户安装。为了更容易地利用 PostgreSQL 的可扩展性,PostgreSQL 13 引入了“可信扩展”的概念,它允许数据库用户安装由超级用户标记为“可信”的扩展。某些内置扩展默认标记为可信,包括 pgcrypto、tablefunc、hstore 等。
对于需要安全身份验证方法的应用程序,PostgreSQL 13 允许客户端在使用 SCRAM 身份验证 时 要求通道绑定,并且 PostgreSQL 外部数据包装器(postgres_fdw)现在可以使用基于证书的身份验证。
PostgreSQL 是世界上最先进的开源数据库,拥有数千名用户、贡献者、公司和组织的全球社区。PostgreSQL 始于加州大学伯克利分校,拥有超过 30 年的工程积累,并持续以无与伦比的速度发展。PostgreSQL 成熟的功能集不仅可以与顶级专有数据库系统相媲美,而且在高级数据库功能、可扩展性、安全性和稳定性方面甚至超越了它们。