PostgreSQL DBA(166) - pgAdmin(Parallelism, what next?)

本节简单介绍了PostgreSQL并行的历史和未来的发展。

9.6
PG的并行执行从9.6开始引入,增加了顺序扫描,连接和聚合操作的并行执行.

10
PG 10对并行的增强包括:
1.支持并行B-tree索引扫描
2.支持并行bitmap heap scans
3.支持merge join并行执行
4.支持非相关non-correlated子查询并行执行
5.预排序数据的并行处理并返回
6.在过程语言中增加并行查询

11
PG 11对并行的增强包括:
1.并行创建btree索引
2.使用共享hash table的情况下并行hash join
3.并行执行CREATE TABLE … AS/SELECT INTO/CREATE MATERIALED VIEW
4.如单个SELECT无法并行则并行执行UNION中的各个子查询
5.传递LIMIT到并行worker中,这可以规约返回结果并使用索引扫描
6.支持single-evaluation查询的并行执行,如WHERE语句中的聚合查询和投影列中的函数

12
PG 12对并行的增强包括:
1.在SERIALIZABLE 隔离模式下支持并行查询

13
PG 13对并行的增强包括:
1.并行VACUUM.处理索引时可以启动多个worker
2.增强EXPLAIN对每个worker的信息显示
3.在并行hash join时避免不必要的SHM写

未来
未来可能的增强包括:
1.并行的grouping sets操作
2.并行copy命令
3.并行的file_fdw
4.并行DML(inset/update/delete…)

参考资料
Parallelism, what next?

请使用浏览器的分享功能分享到微信等