作者:瀚高PG实验室 (Highgo PG Lab)-海无涯
执行计划组件简析
讲解之前,我们来思考一下执行计划的意义,即它在实际的工作中会给我们带来什么?有什么作用?
计划器—决策—执行计划和资源消耗(CPU、内存、磁盘I/O),我们想了解或者排查一个SQL语句所带来的资源消耗,这个时候执行计划显得尤为重要了。
- 解析器:
执行SQL字符串的语法和语义检查
- 重写器:
在某些情况下改变查询;例如,如果查询是针对一个视图,重写器将修改查询,使它面对的是基础表而不是视图。
(解释一下视图的定义:视图,是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。
)
- 计划器:
这个关键部件产生执行计划
- 执行器:
该组件执行计划器产生的计划