并行扫描会占用更多的cpu/IO内存资源,开启的时候要小心配置。
大部分场景都能提高查询效率
之前有过一个生产案例,开启并行之后性能反而没有普通的好,原因就是占有了太多资源,查询慢了,增加表锁概率,产生更多的后台进程
max_parallel_workers_per_gather的值设置为机器内核数据比较妥当,设置再多,查询效率没有明显提高
相关参数解释:
max_worker_processes:最大后台进程数,默认为8,备库要求一致,调整参数后需重启生效
max_parallel_workers:系统支持的并行查询进程数默认为8
max_parallel_workers_per_gather:允许启用并行进程的进程数,默认为2,0表示禁用并行
min_parallel_table_scan_size:表大小小于这个值时,不会开启并行(8Mb)
min_parallel_index_scan_size:并行索引扫描,只会扫描索引数据块