PostgreSQL 12 beta 1 发布,新特性预览

栏目: 软件资讯 · 发布时间: 6年前

内容简介:PostgreSQL 12 beta 1 发布了,此版本包含了 PostgreSQL 12 最终版本中可用的所有功能的预览,但某些细节可能会在 12 正式发布之前发生变化。 新特性包括: 索引性能、功能和管理 PostgreSQL 12 改进了标准 B 树索...

PostgreSQL 12 beta 1 发布了,此版本包含了 PostgreSQL 12 最终版本中可用的所有功能的预览,但某些细节可能会在 12 正式发布之前发生变化。

新特性包括:

索引性能、功能和管理

PostgreSQL 12 改进了标准 B 树索引的整体性能,同时改进了这些索引的空间管理。除了性能提升之外,这些改进还减少了需要经常修改的 B 树索引的大小。

此外,PostgreSQL 12 还增加了并发重建索引的功能,这使得可以在不阻止对索引进行任何写入的情况下执行 REINDEX 操作。此功能应该有助于在生产环境中管理 PostgreSQL 数据库时可能导致停机的冗长索引重建。

PostgreSQL 12 扩展了几种专用索引机制的功能。创建覆盖索引的能力,即 PostgreSQL 11 中引入的 INCLUDE 子句,现已添加到 GiST 索引中。SP-GiST 索引现在支持对支持距离(<->)操作的数据类型执行 K 近邻(K-NN)查询的能力。

创建 GiST、GIN 或 SP-GiST 索引时生成的预写日志(WAL)开销量在 PostgreSQL 12 中也显着降低,这提高了 PostgreSQL 集群的磁盘利用率,同时为连续存档与流复制等功能提供了多种好处。

内联 WITH 查询(公用表表达式)

公共表表达式(也称为 WITH 查询)现在满足以下几个条件则可以在查询中自动内联:

  • 不是递归的
  • 没有任何副作用
  • 仅在查询的后续部分引用一次

这将删除 PostgreSQL 8.4 中引入 WITH 子句以来一直存在的“优化范围”选项。

如果需要,可以使用 MATERIALIZED 子句强制 WITH 查询实现:

WITH c AS MATERIALIZED ( SELECT * FROM a WHERE a.x % 4 = 0 ) SELECT * FROM c JOIN d ON d.y = a.x;

分区

PostgreSQL 12 在处理具有数千个分区的表时,性能提高了,并且只需要使用少量分区操作。PostgreSQL 12 还改进了 INSERT 和 COPY 在分区表中的性能。现在可以在不阻塞分区表上的并发查询的情况下执行 ATTACH PARTITION。此外,PostgreSQL 12 现在允许使用外键来引用分区表。

SQL/JSON 的 JSON 路径查询规范

PostgreSQL 12 现在允许根据 SQL:2016 标准中的 SQL/JSON 规范执行 JSON 路径查询。与 XML 的 XPath 表达式类似,除了比较 JSON 文档中的值之外,JSON 路径表达式还允许评估各种算术表达式和函数。

可以使用 GIN 索引加速这些表达式的子集,从而允许跨多组 JSON 数据执行高性能查找。

排序规则

PostgreSQL 12 现在支持对 ICU 提供的 排序 规则进行不区分大小写和重音不敏感的比较,也称为“非确定性排序规则”。使用时,这些排序规则可以为比较和排序提供便利,但也可能导致性能损失,因为排序规则可能需要对字符串进行额外检查。

可插拔表存储接口

PostgreSQL 12 引入了可插入表存储接口,允许创建和使用不同的表存储方法。可以使用 CREATE ACCESS METHOD 命令将新的访问方法添加到 PostgreSQL 集群,然后将其添加到 CREATE TABLE 上具有新 USING 子句的表中。

可以通过创建新的表访问方法来定义表存储接口。在 PostgreSQL 12 中,默认使用的存储接口是堆访问方法,它目前是唯一的内置方法。

页面校验和

pg_verify_checkums 命令已重命名为 pg_checksums,现在支持在脱机的 PostgreSQL 集群中启用和禁用页面校验和的功能。

认证和连接安全

GSSAPI 现在支持客户端和服务器端加密,可以使用 hostgssenc 和 hostnogssenc 记录类型在 pg_hba.conf 文件中指定。如果使用 OpenLDAP 编译 PostgreSQL,PostgreSQL 12 还允许基于 DNS SRV 记录发现 LDAP 服务器。

详情查看更新说明:

https://www.postgresql.org/about/news/1943


以上所述就是小编给大家介绍的《PostgreSQL 12 beta 1 发布,新特性预览》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Rails 5敏捷开发

Rails 5敏捷开发

[美] Sam Ruby、[美] Dave Thomas、[美] David Heinemeier Hansson / 安道、叶炜、大疆Ruby技术团队 / 华中科技大学出版社 / 2017-12-30 / 115.00

本书以讲解“购书网站”案例为主线,逐步介绍Rails的内置功能。全书分为3部分,第一部分介绍Rails的安装、应用程序验证、Rails框架的体系结构,以及Ruby语言知识;第二部分用迭代方式构建应用程序,然后依据敏捷开发模式开展测试,最后用Capistrano完成部署;第三部分补充日常实用的开发知识。本书既有直观的示例,又有深入的分析,同时涵盖了Web开发各方面的知识,堪称一部内容全面而又深入浅出......一起来看看 《Rails 5敏捷开发》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

SHA 加密
SHA 加密

SHA 加密工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具