第一章(2)——预估和实际执行计划

简介: 原文: 第一章(2)——预估和实际执行计划 正如前面提到的,有两种不同类型的执行计划,第一种,就是优化器的输出结果,成为预估执行计划,里面的操作符或者步骤都是逻辑步骤,因为他们代表着执行计划在优化器中的视图,但是并不表现在实际执行中物理层面的发生。
原文: 第一章(2)——预估和实际执行计划

正如前面提到的,有两种不同类型的执行计划,第一种,就是优化器的输出结果,成为预估执行计划,里面的操作符或者步骤都是逻辑步骤,因为他们代表着执行计划在优化器中的视图,但是并不表现在实际执行中物理层面的发生。

另外一种计划是表示查询实际执行的输出结果。这种类型叫做实际执行计划,表示查询在实际执行时发生的事情。

这两个计划显示独立的不同的结果集,但是可以看出有巨大的相同之处。大部分情况下,相同的开销的相同的操作符会出现在两种执行计划中。但是当发生重编译,SQLServer会删除计划缓存中的计划并重建它,此时两者就会有明显的差异。这种情况通常发生于统计信息的更改,或存储引擎在处理查询时发生的其他事情。我们将在这章的后面部分更详细地说明。

预估执行计划(后面简称预估计划)是存放在计划缓存中的计划,所以我们对于实际执行计划,只能通过捕捉查询运行的时候产生的执行计划。预估计划从不直接访问数据,但是它对大型的、复杂的、可能运行很久的查询分析相当有效。但是实际计划是首选的,因为它能显示很多运行过程中重要的统计信息如特定操作符实际访问的行数。通常情况下,这种额外的信息使得实际计划成为你最常用的方式,但是预估计划机器重要,特别是因为你可以从计划缓存中获取。

目录
相关文章
|
20天前
|
缓存 关系型数据库 MySQL
MySQL 查询优化:提速查询效率的13大秘籍(索引设计、查询优化、缓存策略、子查询优化以及定期表分析和优化)(中)
MySQL 查询优化:提速查询效率的13大秘籍(索引设计、查询优化、缓存策略、子查询优化以及定期表分析和优化)(中)
|
17天前
|
存储 关系型数据库 MySQL
mysql优化指南之优化篇
mysql优化的一些方法
33 1
|
25天前
|
SQL 存储 关系型数据库
场景+案例分析,SQL优化
场景+案例分析,SQL优化
40 3
|
4月前
|
SQL 算法 关系型数据库
从执行计划了解MySQL优化策略
从执行计划了解MySQL优化策略
54 0
从执行计划了解MySQL优化策略
|
7月前
|
SQL 关系型数据库 MySQL
OBCP第四章 SQL调优-索引
OBCP第四章 SQL调优-索引
55 0
|
SQL 存储 算法
PostgreSQL 执行计划,成本公式解说,代价因子校准,自动跟踪SQL执行计划(二)|学习笔记
快速学习PostgreSQL 执行计划,成本公式解说,代价因子校准,自动跟踪SQL执行计划(二)
288 0
PostgreSQL 执行计划,成本公式解说,代价因子校准,自动跟踪SQL执行计划(二)|学习笔记
|
SQL 缓存 关系型数据库
SQL优化案例
SQL优化案例
|
SQL 移动开发 关系型数据库
PostgreSQL 执行计划,成本公式解说,代价因子校准,自动跟踪SQL执行计划(三)|学习笔记
快速学习PostgreSQL 执行计划,成本公式解说,代价因子校准,自动跟踪SQL执行计划(三)
546 0
PostgreSQL 执行计划,成本公式解说,代价因子校准,自动跟踪SQL执行计划(三)|学习笔记
|
SQL XML JSON
PostgreSQL 执行计划,成本公式解说,代价因子校准,自动跟踪SQL执行计划(一)|学习笔记
快速学习PostgreSQL 执行计划,成本公式解说,代价因子校准,自动跟踪SQL执行计划(一)
488 0
PostgreSQL 执行计划,成本公式解说,代价因子校准,自动跟踪SQL执行计划(一)|学习笔记
|
SQL 存储 关系型数据库
场景+案例分析,SQL优化这么做就对了!
在应用开发的早期,数据量少,开发人员开发功能时更重视功能上的实现,随着生产数据的增长,很多SQL语句开始暴露出

热门文章

最新文章