50.1. The Path of a Query
Posted 丹心明月
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了50.1. The Path of a Query相关的知识,希望对你有一定的参考价值。
50.1 查询执行路径
为获得结果集,查询所需要的经过的解析阶段:
-
建立从应用程序到PostgreSQL服务的连接。应用程序发送查询到数据库服务,并等待数据库服务发回查询结果。
-
解析阶段(parse stage)检查应用程序发送的查询的语法并生成查询树(query tree);
-
重写系统(rewrite system)使用解析阶段生成的查询树,然后检索是否有需要应用到查询树的规则(存储在系统视图中)。如果有,根据规则改写。
-
重写系统的一个应用是视图(view)。当查询视图时,重写系统会将用户的查询重写到查询视图定义中指定的基表。
-
-
计划器(planner)或优化器(optimizer)使用查询树生成作为执行器输入的查询计划(query plan)。
-
首先创建具有相同结果的所有可能的路径。例如,如果表上有一个可被检索的索引,那么就有两种检索方式:一种是简单的顺序扫描;一种是使用索引。
-
然后对每种路径的执行成本进行计算,并选择成本最低的路径;
-
成本最低的路径扩展为执行器可用的完整的计划;
-
-
执行器根据执行树执行,并据此检索行。执行器在检索对象时使用存储系统,并进行排序和联接,评估限定符并最终返回结果行。
接下来的章节会对以上的条目进行深入探讨。
以上是关于50.1. The Path of a Query的主要内容,如果未能解决你的问题,请参考以下文章
SQL Server捕获发生The query processor ran out of internal resources and could not produce a query plan..
问题记录系列the resource is not on the build path of a java project
the resource is not on the build path of a Java project报错解决
Given a matrix, get the number of path from the top left cell to the top right cell.