SET STATISTICS IO 的理解
SET STATISTICS IO 的理解
SET STATISTICS IO 的理解SET STATISTICS IO ON这个开关能够输出语句做的物理读和逻辑读的数目。对分析语句的复杂度有很重要的作用
一、语法
SET STATISTICS IO { ON | OFF }
二、注释
当 STATISTICS IO 为 ON 时,显示统计信息。为 OFF 时,不显示统计信息。
将该选项设置为 ON 后,所有的后续 Transact-SQL 语句将返回统计信息,直到将该选项设置为 OFF 为止。
三、SET STATISTICS IO实例分析
DBCC DROPCLEANBUFFERS
GO
SET STATISTICS IO ON
GO
SELECT DISTINCT([ProductID]),[UnitPrice] FROM [dbo].[SalesOrderDetail_test]
WHERE [ProductID]=777
GO
其返回的统计情况如下
(4 行受影响)
表 'SalesOrderDetail_test'。扫描计数 5,逻辑读取 15064 次,物理读取 0 次,预读 15064 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次。
四、统计信息的解释
表:表的名称。这里的表就是SalesOrderDetail_test
扫描计数:执行的扫描次数。按照执行计划,表格被扫描了几次。一般来讲大表扫描的次数越多越不好。唯一的例外是如果执行计划选择了并发运行,由多个thread线程同时做一个表的读取,每个thread读其中的一部分,但是这里会显示所有thread的数目。也就是有几个thread在并发做,就会有几个扫描。这时数目大一点没问题的。
逻辑读取:从数据缓存读取的页数。页数越多,说明查询要访问的数据量就越大,内存消耗量越大,查询也就越昂贵。
可以检查是否应该调整索引,减少扫描的次数,缩小扫描范围
物理读取:从磁盘读取的页数
预读:为进行查询而预读入缓存的页数
物理读取+预读:就是SQLSERVER为了完成这句查询而从磁盘上读取的页数。如果不为0,说明数据没有缓存在内存里。运行速度一定会受到影响
LOB逻辑读取:从数据缓存读取的text、ntext、image、大值类型(varchar(max)、nvarchar(max)、varbinary(max))页的数目
LOB物理读取:从磁盘读取的text、ntext、image、大值类型页的数目
LOB预读:为进行查询而放入缓存的text、ntext、image、大值类型页的数目
五、第二次运行上面SQL语句
返回的统计结果
表 'SalesOrderDetail_test'。扫描计数 5,逻辑读取 15064 次,物理读取 0 次,预读 0 次,lob 逻辑读取 0 次, lob 物理读取 0 次,lob 预读 0 次。
这次逻辑读取不变,还是15064页。但是物理读取和预读都是0了。说明数据已经缓存在内存里,第二次运行不需要再从磁盘上读一遍,节省了时间。所以为了不影响其他测试,请运行下面语句关闭SET STATISTICS IO OFF
- sql提交事务代码(SQL SERVER提交事务回滚机制)
- sql server网络配置
- sql server中cxpacket等待
- SQL Server无法连接远程数据库的解决方法
- sqlserver分区查询语句(SQL Server中的集合运算: UNION, EXCEPT和INTERSECT示例代码详解)
- sql server存储过程详解(SQL Server存储过程中编写事务处理的方法小结)
- sql server 自定义函数
- sql server证书配置(SQL Server Alwayson创建代理作业的注意事项详解)
- sql server中check约束
- 数据库sqlserver定时任务(SQL Server 2005作业设置定时任务)
- sqlserver分页查询sql语句(sql server实现分页的方法实例分析)
- microsoftsqlserver官网(Microsoft SQL Server数据库各版本下载地址集合)
- sqlserver语句中的temp(SQL SERVER中强制类型转换cast和convert的区别详解)
- sqlserver安装使用教程(SQL Server 2019下载与安装教程自定义安装)
- sqlserver怎么调成混合登录(如何快速删掉SQL Server登录时登录名下拉列表框中的选项)
- sql设计数据库过程文字详述(Sql Server 数据库中调用dll文件的过程)
- 常见的喜阴植物有哪些 养室内盆栽就在这里选(常见的喜阴植物有哪些)
- 这8种耐阴植物,营造阴生植物花境,也是一个不错的选择(营造阴生植物花境)
- 览邦G08 Plus SMART WATCH 测评⑱ 全独立这才是智能手表该有的样子(览邦G08PlusSMART)
- 荣耀手表 GS 3 真机亮相 不支持无线充电(荣耀手表GS3)
- 通过体温就能为智能手表充电 原来是用NASA在空间站用的黑科技(通过体温就能为智能手表充电)
- 智能手表兼容Windows和Android 无需充电挑战苹果(智能手表兼容Windows和Android)
热门推荐
- dedecms修改教程(还原dedecms数据后系统基本参数空白的解决方法)
- js弹出新窗口被拦截的解决方法
- JavaScript中实现AES加密解密
- 海外云服务器租用要怎么选择?(海外云服务器租用要怎么选择?)
- APP中数据加载方式
- sql执行原理详解(Sql server中内部函数fn_PhysLocFormatter存在解析错误详解)
- mysql 高级用法(MySQL实现replace函数的几种实用场景)
- vue实现一个炫酷的日历组件(vue利用Moment插件格式化时间的实例代码)
- laravel前后端分离实现排序(laravel自定义分页的实现案例offset和limit)
- jvm运动数据区总结(JVM上高性能数据格式库包Apache Arrow入门和架构详解Gkatziouras)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9