PostgreSQL17正式推出,性能、JSON处理与数据库管理全面提升

逢纪说科技 2024-10-01 02:37:45

PostgreSQL 17正式发布,除了加入新的功能之外,也改进了性能表现以及开发者体验。这个版本优化数据库清理(Vacuum)、I/O性能和查询执行,同时强化JSON数据处理能力,也对逻辑复写(Logical Replication)、高可用性和主要版本升级支持进行改进。此外,PostgreSQL 17还添加了安全性管理、备份操作与监控分析等功能。

这版本PostgreSQL数据库清理(Vacuum)程序进行性能更好了,大幅减少内部内存的使用量。PostgreSQL 17新的内部内存结构可以降低多达20倍的数据占用,让清理程序更快速,并减少对共享资源的需求。这样的改进不只使得更多系统资源,能够被用于处理日常工作负载,更有效提升数据库整体性能,以及存储空间回收效率,减少系统维护过程的性能影响。

I/O性能方面,PostgreSQL 17针对高并行工作负载进行优化,通过优化预写式日志(Write-Ahead Log,WAL)的处理,写入吞吐量可提升至2倍,增强了系统在高流量场景下的稳定性。此外,新的流媒体I/O界面加快了串行扫描和ANALYZE指令的效率,使得数据表的扫描和统计变得更快速。而这一系列的I/O改进,皆有助于大型数据库的运维和分析作业。

PostgreSQL 17在查询功能上也有许多改进,包括针对B-tree索引和常见数据表表达式进行优化,提升了复杂查询的效率,新功能则有BRIN索引现在支持平行构建,以及更高效的IN子句查询,额外的SIMD支持,包括使用AVX-512加速bit_count函数,也让运算更为高效。

PostgreSQL 17强化了JSON数据的处理能力,新的JSON_TABLE功能可将JSON数据转换成标准数据表。此外,PostgreSQL 17支持SQL/JSON构建函数和查询函数,提供开发者更多操作JSON的方法。此版本还强化了jsonpath表达式,支持将JSON数据转换成原生PostgreSQL类型。这些新的JSON功能让开发者拥有更强大的工具,以处理日益增加的JSON数据结构应用。

在这个版本之前,开发者进行主要版本升级时必须删除逻辑复写插槽(Slot),并在升级后重新同步数据,这是一个耗时的过程。而PostgreSQL 17升级不再需要删除逻辑复写插槽,简化高可用性工作负载和主要版本升级的管理。

PostgreSQL 17在安全性管理、备份操作和监控分析方面进行多项改进,包括添加sslnegotiation选项提升TLS连接的安全性,以及pg_maintain预定义角色简化维护操作。pg_basebackup新工具提供增量备援支持,而pg_dump则是加入了--filter选项,供用户在产生倾印文件时,可以选择要包含的对象。在监控方面,EXPLAIN添加了I/O读写时间和内存使用量的报告功能,并加入pg_wait_events系统查看功能增加问题诊断效率。

1 阅读:84

逢纪说科技

简介:感谢大家的关注