postgresql 执行计划中的一些术语和关键字。
| 执行计划运算类型 | 操作说明 | 是否有启动时间 |
|---|---|---|
| Seq Scan | 扫描表 | 无启动时间 |
| Index Scan | 索引扫描 | 无启动时间 |
| Bitmap Index Scan | 索引扫描 | 有启动时间 |
| Bitmap Heap Scan | 索引扫描 | 有启动时间 |
| Subquery Scan | 子查询 | 无启动时间 |
| Tid Scan | ctid = …条件 | 无启动时间 |
| Function Scan | 函数扫描 | 无启动时间 |
| Nested Loop | 循环结合 | 无启动时间 |
| Merge Join | 合并结合 | 有启动时间 |
| Hash Join | 哈希结合 | 有启动时间 |
| Sort | 排序,ORDER BY操作 | 有启动时间 |
| Hash | 哈希运算 | 有启动时间 |
| Result | 函数扫描,和具体的表无关 | 无启动时间 |
| Unique | DISTINCT,UNION操作 | 有启动时间 |
| Limit | LIMIT,OFFSET操作 | 有启动时间 |
| Aggregate | count, sum,avg, stddev聚集函数 | 有启动时间 |
| Group | GROUP BY分组操作 | 有启动时间 |
| Append | UNION操作 | 无启动时间 |
| Materialize | 子查询 | 有启动时间 |
| SetOp | INTERCECT,EXCEPT | 有启动时 |
影响CBO的参数:
cpu_index_tuple_cost (0.005)
cpu_operator_cost (0.0025)
cpu_tuple_cost (0.01)
random_page_cost (4.0)
seq_page_cost (1.0)
常见视图:
pg_stats
pg_statistic
pg_class
系统变量:
default_statistics_target
geqo_threshold
join_collapse_limit
from_collapse_limit
explain
常见参数:
ANALYZE
:执行命令并显示执行事件,默认false
VERBOSE :对执行计划提供额外的信息,如查询字段信息等,默认false
COSTS :显示执行计划的,默认true
BUFFERS :默认false,前置条件是analyze
FORMAT :默认格式是text
本文介绍了PostgreSQL执行计划中的关键术语和参数,包括cpu_index_tuple_cost、cpu_operator_cost等成本参数,以及pg_stats等视图和default_statistics_target等系统变量。同时,解释了EXPLAIN命令的使用,如ANALYZE、VERBOSE、COSTS和BUFFERS选项。
2637

被折叠的 条评论
为什么被折叠?



