执行计划描述

执行计划中各字段的描述

1、基本字段

Id        
执行计划中每一个操作(行)的标识符。如果数字前面带有星号,意味着将在随后提供这行包含的谓词信息

Operation  对应执行的操作。

Name       对象名称

    
2.优化器的估算数据新和性能数据信息

ROWS/E-ROWS        
优化器预估当前操作返回给上一级操作的记录数,如果计划同时输出收集到实际记录数,会显示E-ROWS跟实际记录数区别。

A-ROWS   操作返回的真实记录数

Bytes/E-Bytes 优化器预估当前操作返回给上一级操作的记录字节数,如果计划同时输出收集到实际字节数,会显示E-Bytes跟实际字节数区别。

TempSpc/E-TEMP 
优化器预估当前操作所需的临时表空间大小(如合并排序连接、哈希连接操作等),如果计划同时输出收集到实际临时表空间大小,

会显示E-TEMP跟实际临时表空间大小区别。

Cost(%CPU)     
预估操作所需的开销。在括号中列出了CPU开销的百分比。注意这些值是通过执行计划计算出来的。

换句话说,父操作的开销包含子操作的开销

Time           
优化器预估执行操作所需要的时间(HH:MM:SS)

A-TIME     操作执行的真实时间(HH:MM:SS.FF)

Starts  操作被启动的次数

Buffers 操作读内存的次数

Reads 操作读磁盘次数

Writes 操作写磁盘次数

OMem 当前操作完成操作需要私有工作区(PGA)的大小(HASH AREA 和SORT AREA)

1Mem 一次通过(one-pass)执行所需内存的预估值

0/1/M        
最优/一次通过/多次通过(multipass)模式操作执行的次数

Used-Mem      最后一次执行时操作使用的内存量

Used-Tmp     
最后一次执行时操作使用的临时空间大小。这个字段必须扩大1024倍才能和其他衡量内存的字段一致(比如,32k意味着32MB)

Max-Tmp      
操作使用的最大临时空间大小。这个字段必须扩大1024倍才能和其他衡量内存的字段一致(比如,32k意味着32MB)

执行计划描述

时间: 2024-10-18 08:10:11

执行计划描述的相关文章

06 执行计划

本章提要-------------------------------------------如何设置, 来获取执行计划如何读懂执行计划-------------------------------------------执行计划描述了SQL引擎为执行SQL语句进行的操作. 在任何时候, 要处理执行计划, 需以下三步, 获取, 解释, 判定效率. 6.1 获取执行计划    获取的办法:    1) 执行SQL语句EXPLAIN PLAN, 查询结果输出表    2) 查看动态视图    3)

了解SQL Server执行计划

当需要分析某个查询的效能时,最好的方式之一查看这个查询的执行计划.执行计划描述SQL Server查询优化器如何实际运行(或者将会如何运行)一个特定的查询. 查看查询的执行计划有几种不同的方式.它们包括: SQL Server查询分析器里有一个叫做”显示实际执行计划”的选项(位于”查询”下拉菜单中).如果打开了这个选项,那么无论何时在查询分析器中运行一个查询,都会得到一个显示在单独窗口的查询执行计划(以图形的格式). 如果只是想看下执行计划而不想运行查询,那么可以选择”显示预估的执行计划”选项(

执行计划中各字段各模块描述

在SQL语句的执行计划中,包含很多字段项和很多模块,其不同字段代表了不同的含义且在不同的情形下某些字段.模块显示或不显示,下 面的描述给出了执行计划中各字段的含义以及各模块的描述. 有关执行计划中各字段模块的描述请参考: 执行计划中各字段各模块描述        有关由SQL语句来获取执行计划请参考:     使用 EXPLAIN PLAN 获取SQL语句执行计划        有关使用autotrace来获取执行计划请参考:启用 AUTOTRACE 功能        有关display_cu

执行计划-数据访问方式(全表扫描与4种索引的方式)

执行计划 Oracle执行计划的相关概念: Rowid:系统给oracle数据的每行附加的一个伪列,包含数据表名称,数据库id,存储数据库id以及一个流水号等信息,rowid在行的生命周期内唯一. Recursive sql:为了执行用户语句,系统附加执行的额外操作语句,譬如对数据字典的维护等. Row source(行源):oracle执行步骤过程中,由上一个操作返回的符合条件的行的集合. Predicate(谓词):where后的限制条件. Driving table(驱动表):又称为连接的

Oracle执行计划详解

 简介: 本文全面详细介绍oracle执行计划的相关的概念,访问数据的存取方法,表之间的连接等内容. 并有总结和概述,便于理解与记忆! +++ 目录 --- 一.相关的概念 Rowid的概念 Recursive Sql概念 Predicate(谓词) DRiving Table(驱动表) Probed Table(被探查表) 组合索引(concatenated index) 可选择性(selectivity) 二.oracle访问数据的存取方法 1) 全表扫描(Full Table Scan

Mysql之执行计划

1.explain分析sql语句 例如: EXPLAIN SELECT * FROM blog_info bi INNER JOIN uam_view_unit_account uua ON bi.account_instance_id = uua.account_instance_id WHERE bi.is_comment = 0 OR (bi.is_comment = 1 AND bi.is_forward = 1)  ORDER BY bi.`publish_time`  返回结果: 而

MongoDB执行计划分析详解(1)

正文 queryPlanner queryPlanner是现版本explain的默认模式,queryPlanner模式下并不会去真正进行query语句查询,而是针对query语句进行执行计划分析并选出winning plan. { "queryPlanner" : { "plannerVersion" : 1, "namespace" : "game_db.game_user", "indexFilterSet&qu

Oracle执行计划

Oracle执行计划 最近一直在跟Oracle打交道,从最初的一脸懵逼到现在的略有所知,也来总结一下自己最近所学,不定时更新ing- 一:什么是Oracle执行计划? 执行计划是一条查询语句在Oracle中的执行过程或访问路径的描述 二:怎样查看Oracle执行计划? 因为我一直用的PLSQL远程连接的公司数据库,所以这里以PLSQL为例: ①:配置执行计划需要显示的项: 工具  ->  首选项 ->   窗口类型  ->  计划窗口  ->  根据需要配置要显示在执行计划中的列

SQL Server执行计划那些事儿(2)——查找和扫描

接下来的文章是记录自己曾经的盲点,同时也透漏了自己的发展历程(可能发展也算不上,只能说是瞎混).当然,一些盲点也在工作和探究过程中慢慢有些眉目,现在也愿意发扬博客园的奉献精神,拿出来和大家分享一下. 开门见上,直接入题 在查看执行计划时候,你是否曾经也和我一样,有这样的疑惑呢?查找和扫描究竟是什么,以及他们的在查询性能上有什么区别.下面分享下我的理解. 扫描和查找是SQL Server从表或索引中读取数据所采用的迭代器,又因为经常在执行计划中看到,因此理解他们之间的区别,对我们优化查询有很重要的