postgresql的并行查询
2021/11/24 2:10:07
本文主要是介绍postgresql的并行查询,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
postgresql的并行查询
- 9.6版本之前不支持并行查询,9.6+版本支持并行查询有限,10+版本增强并行查询功能
- 10版本暂不支持非btree索引类型的并行索引扫描
并行查询的相关参数
##设置系统支持的最大后台进程数,备库需要大于或等于主库的
max_worker_processes
##设置系统支持的并行查询进程数,默认8
max_parallel_workers
##设置允许启用的并行进程的进程数
max_parallel_workers_per_gather
##设置优化器启动并行进程的成本
parallel_setup_cost
##设置优化器通过并行进程处理一行数据的成本
parallel_tuple_cost
##设置开启并行的条件之一,表占用空间小于此值将不会开启并行
min_parallel_table_scan_size
##设置开启并行的条件之一,实际上并行索引扫描不会扫描所有所有数据块,只扫描索引相关的数据块
min_parallel_index_scan_size
##强制开启并行,一般作为测试目的,生产环境不建议使用,一般不建议开启
force_parallel_mode
三个配置参数关系通常:
max_worker_processes > max_parallel_workers > max_parallel_workers_per_gather
1.并行顺序扫描
seq scan …
parallel seq scan on …
2.并行索引扫描
index scan using …
parallel index scan …
3.并行index-only扫描
index only scan using …
parallel index only scan …
4.并行bitmap heap扫描
当sql的where条件中出现or时很有可能出现bitmap index扫描
bitmap index scan
5.多表联级
- nested loop多表关联,实际上是一个嵌套循环
- merge join多表关联,先对表进行排序后再进行关联字段匹配
- hash join多表关联,当关联字段没有索引情况下两表关联通常会进行hash join
这篇关于postgresql的并行查询的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-01-05快速清空 PostgreSQL 数据库中的所有表格,让你的数据库重新焕然一新!
- 2024-01-04在PostgreSQL中创建角色:判断角色是否存在并创建
- 2023-05-16PostgreSQL一站式插件推荐 -- pg_enterprise_views
- 2022-11-22PostgreSQL 实时位置跟踪
- 2022-11-22如何将PostgreSQL插件移植到openGauss
- 2022-11-11PostgreSQL:修改数据库用户的密码
- 2022-11-06Windows 环境搭建 PostgreSQL 物理复制高可用架构数据库服务
- 2022-10-27Windows 环境搭建 PostgreSQL 逻辑复制高可用架构数据库服务
- 2022-10-11PostgreSql安装(Windows10版本)
- 2022-09-13PostgreSQL-Network Address类型操作和函数