slot deposit pulsa slot mahjong slot gacor slot gacor slot gacor resmi slot gacor 2025 slot gacor terpercaya slot gacor 2025 slot gacor hari ini slot gacor hari ini slot gacor hari ini
Postgres 15 都带来了什么新功能?
17611538698
webmaster@21cto.com

Postgres 15 都带来了什么新功能?

数据库 0 1972 2022-12-21 09:03:02

祝贺,PostgreSQL 社区于2022 年 11 月发布了第 15 版(稳定版),这会给广大开发者和数据库管理员带来什么好消息?请看正文。

权限模型更安全

CREATE 权限除数据库所有者外,其它用户的此项权限都将被撤销,这使权限分配更具备可调。

增加了 CREATE VIEW .. WITH (security_invoker=on) 的类型视图创建,该视图使用调用者而不是创建者的权限来访问基础表。这样你再不必担心无权访问表的用户可以通过视图来查看数据了。

性能加速

对数据行进行排序是 PostgreSQL 中常见操作。不仅在使用 ORDER BY 子句时使用,而且在索引创建、分区表等中使用。此外排序是算法上最昂贵的操作之一。因此版本 15 中将内存和磁盘排序的速度提高为目标,比前版本多达 4 倍的提升。

引入MERGE操作

新的MERGE合并操作根据提供的源和许多可用条件来修改目标数据表,允许在不编写过程语言函数或复杂的 CTE 查询的情况下进行数据处理。

图片

本质上,合并可以用作条件删除/插入/更新,这也使 PostgreSQL 语法实现更接近 SQL:2008 标准。

逻辑复制新特性

逻辑复制是 PostgreSQL 发展最快的功能之一。

从版本 15 开始,逻辑复制支持两阶段提交。现在还可以选择部分表数据进行逻辑复制,比如使用一部分行和列集。在复制出现冲突的情况下,比如复制的数据违反某些约束或存在权限冲突,用户可以选择跳过冲突事务或禁用订阅功能。

增加并行化

使用多个工作进程执行查询是 PostgreSQL 发展的另一部分。在版本 15的SELECT DISTINCT中,从输出中删除重复行的查询将使用并行工作器提高性能。

JSON Log

将日志数据输出为JSON结构,有助于客户端进行日志处理与结构化输出。这种“结构化日志”也可以被其它程序用于存储与分析。

压缩选项

在15中,可以选择Zstandard和ZL4代替pglz作为 WAL 压缩方法。WAL 压缩算法可以减少磁盘空间使用,同时保护数据完整性。

当使用提供的 pg basebackup 扩展进行数据库备份时,用户还可以选择 _Zstandard或ZL4来压缩服务器端的数据库备份,从而减少通过网络传输的数据。

新的 POSIX 正则表达式函数

几个新推出的正则表达式函数对字符串处理很有用,例如 regexp_substr()、regexp_count() 等。

共享内存中的服务器统计信息

从 PostgreSQL 15 开始,服务器级统计信息(以前是单独的统计信息收集器进程的一部分)存储在共享内存中。这消除了单独的统计信息收集器进程。PostgreSQL 跟踪每个进程的所有活动以获得累积统计信息,并且所有信息都可以通过不同的 pg_stat_* 视图获得。

应该升级到PostgreSQL 15吗?

切换到新的 PostgreSQL 主要原因是是它提供了大量错误修复。错误修复不像新功能或性能改进那样明显,但它们会产生更大的影响。虽然一些错误修复适用于以前的版本,但这些更改需要修改 API、接口函数和系统目录结构,这在已经发布的主要版本中通常是不可能的。

因此,用户应该更新以提高稳定性。

由于每 4 月的新功能的代码冻结和 10 月的稳定版本之间有半年稳定期,因此升级是安全的。在选择升级之前,不要忘记查看升级前后需要手动操作的状况列表以及PG 15 升级日志。

在2022年的数据库调查中,PostgreSQL是最受广泛使用的数据库之一。同时也是DB-Engines 中最受欢迎的数据库之一。

以下是Google Trends的数据:

图片

不管理PG现在有多流行,针对于专业用户来说,最重要的是了解自己的开发用例,利用哪些功能来使自己的 PostgreSQL 发挥到最佳性能。

作者:陈根

参考:

https://www.percona.com/blog/postgresql-15-new-features-to-be-excited-about/

评论