PostgreSQL 11 新特性解读 : 支持并行创建索引(Parallel Index Builds)

  • 时间:
  • 浏览:0

最后推荐和张文升并肩编写的《PostgreSQL实战》,本书基于PostgreSQL 10 编写,共18章,重点介绍SQL高级特征、并行查询、分区表、物理好友克隆、逻辑好友克隆、备份恢复、高可用、性能优化、PostGIS等,含高血块实战用例!

设置 max_parallel_maintenance_workers 值不同并行度,测试并行索引创建的时间。

PostgreSQL 11 版本并行创建索引仅支持 B-tree 索引,其它类型索引现阶段不支持并行创建。

可能性想恢复指定表上的parallel_workers参数设置,使用 RESET 选项即可,如下:

从以上看出,当 max_parallel_maintenance_workers 值为4时索引创建时间突然经常出现拐点。

在会话级设置max_parallel_maintenance_workers值为4。

postgresql.conf 设置以下并行度参数如下:

以上参数可能性何必 容易理解,进一步解释如下:

创建索引,如下

购买链接:https://item.jd.com/12405774.html

创建测试表big并插入5000万条数据,如下:

PostgreSQL 11 版本在并行方面得到增强,相似支持并行创建索引、并行Hash Join、并行 CREATE TABLE .. AS等,本文先介绍并行创建索引。

可通过 ALTER TABLE 法律法律法律依据禁止表上的并行创建索引,如下禁止表big上的所有并行创建索引。

本测试环境为一台4核8GB内存的虚机,测试结果如下:

通过前面介绍一群人儿知道可通过设置max_parallel_maintenance_workers参数为0关闭所有表的并行创建索引,怎样才能关闭指定表的并行索引创建呢?

介绍并行创建索引过后先来看看并行进程的相关 postgresql.conf 参数。

在主机上通过 top 命令都须要看得人 CREATE INDEX 命令的进程号为 21164,有过后开启了另有有一个多并发子进程。