Sql Server- 性能优化辅助指标SET STATISTICS TIME ON和SET STATISTICS IO ON
2016-10-26 15:06
405 查看
1.前言
对于优化SQL语句或存储过程,以前主要是用如下语句来判断具体执行时间,但是SQL环境是复杂多变的,下面语句并不能精准判断性能是否提高;如果需要精确知道CPU、IO等信息,就无能为力了。
这时候如果使用SET STATISTICS TIME ON和SET STATISTICS IO ON 指令就能清楚的知道了,在测试之前需执行下面2条命令
DBCC DROPCLEANBUFFERS 清除缓冲区
DBCC FREEPROCCACHE 删除计划高速缓存中的元素
2.测试
2.1 首先执行下面脚本
结果如下
说明:
标记1:表示将语句的结果放到SQL缓冲区所需要的CPU时间和总时间
标记2:标识从缓冲区中取出解析结果所需要的时间
标记4:标识这次查询使用了多少CPU时间和总的时间,其中CPU时间是对查询所需CPU资源的一种比较稳定的测量方式;总时间则跟SQL服务器有关,因此比较不稳定;所以性能判断的时候可以以CPU时间来做标准。
标记3:资源时间;其中逻辑读是指SQL从缓冲区读取的数据;物理读是指从数据从磁盘读取到缓冲区中;
2.2 再次运行查询语句结果如下,由于第一次执行的时候,数据已经从磁盘读取到缓冲区,因此标记1的时间也就是0了,标记3物理读也为0了。
2.3 在优化SQL语句的时候可以从CPU时间,逻辑读取数来判断性能是否提升,而且这2个指标是比较真实的反映了SQL执行情况的。这里只是简单介绍了一下这2个命令的一些基本信息,则需更加深入了解SQL底层知识。
对于优化SQL语句或存储过程,以前主要是用如下语句来判断具体执行时间,但是SQL环境是复杂多变的,下面语句并不能精准判断性能是否提高;如果需要精确知道CPU、IO等信息,就无能为力了。
DBCC DROPCLEANBUFFERS 清除缓冲区
DBCC FREEPROCCACHE 删除计划高速缓存中的元素
2.测试
2.1 首先执行下面脚本
说明:
标记1:表示将语句的结果放到SQL缓冲区所需要的CPU时间和总时间
标记2:标识从缓冲区中取出解析结果所需要的时间
标记4:标识这次查询使用了多少CPU时间和总的时间,其中CPU时间是对查询所需CPU资源的一种比较稳定的测量方式;总时间则跟SQL服务器有关,因此比较不稳定;所以性能判断的时候可以以CPU时间来做标准。
标记3:资源时间;其中逻辑读是指SQL从缓冲区读取的数据;物理读是指从数据从磁盘读取到缓冲区中;
2.2 再次运行查询语句结果如下,由于第一次执行的时候,数据已经从磁盘读取到缓冲区,因此标记1的时间也就是0了,标记3物理读也为0了。
相关文章推荐
- Sql Server性能优化辅助指标SET STATISTICS TIME ON和SET STATISTICS IO ON
- SQLServer------Sql Server性能优化辅助指标SET STATISTICS TIME ON和SET STATISTICS IO ON
- Sql Server性能优化辅助指标SET STATISTICS TIME ON和SET STATISTICS IO ON
- 利用SET STATISTICS IO和SET STATISTICS TIME 优化SQL Server查询性能
- SET STATISTICS IO和SET STATISTICS TIME 在SQL Server查询性能优化中的作用
- 利用SET STATISTICS IO和SET STATISTICS TIME 优化SQL Server查询性能
- SET STATISTICS IO和SET STATISTICS TIME 在SQL Server查询性能优化中的作用
- 利用SET STATISTICS IO和SET STATISTICS TIME 优化SQL Server查询性能
- SQL Server读懂语句运行的统计信息 SET STATISTICS TIME IO PROFILE ON
- SQL Server: 利用 SET STATISTICS IO 和 SET STATISTICS TIME 对T-SQL语句进行性能分析
- SQL Server读懂语句运行的统计信息 SET STATISTICS TIME IO PROFILE NOCOUNT ON
- ql查询性能调试,用SET STATISTICS IO和SET STATISTICS TIME
- sql性能调试-讲解set statistics io 和 set statistics time (转)
- sql查询性能调试,用SET STATISTICS IO和SET STATISTICS TIME
- 【转】sql查询性能调试,用SET STATISTICS IO和SET STATISTICS TIME
- sql查询性能调试,用SET STATISTICS IO和SET STATISTICS TIME---解释比较详细
- [转] 利用SET STATISTICS IO和SET STATISTICS TIME 优化SQL Server查询性能
- SQL SERVER - set statistics time on的理解
- sql查询性能调试,用SET STATISTICS IO和SET STATISTICS TIME
- sql性能调试-讲解set statistics io 和 set statistics time (转)