51.1. 查询的路径

在这里,我们简要概述了查询必须经过的阶段才能获得结果。

重写系统的一种应用是* views 的实现。每当针对视图(即虚拟表*)进行查询时,重写系统都会将用户的查询重写为访问视图定义中提供的基本表的查询。

通过首先创建所有可能的* path *导致相同的结果来做到这一点。例如,如果要扫描的关系上有索引,则有两个扫描路径。一种可能性是简单的 Sequences 扫描,另一种可能性是使用索引。接下来,估计每个路径的执行成本,并选择最便宜的路径。最便宜的路径被扩展为执行者可以使用的完整计划。

在以下各节中,我们将更详细地介绍上述每个项目,以更好地理解 PostgreSQL 的内部控制和数据结构。

上一章 首页 下一章