zoukankan      html  css  js  c++  java
  • SQL Server性能优化(1)使用SET函数

    在一切开始之前,先看下微软的建议:在系统的整体性能优化里面, TSQL优化优先级并不是最高的。

    image

    本文包括四部分:

    • SET STATISTICS TIME ON
    • SET STATISTICS IO
    • SET SHOWPLAN_ALL ON
    • SET STATISTICS PROFILE ON

    SET 函数主要是为了显示sql执行时的查询计划,CPU、硬盘使用情况。

    1. SET STATISTICS TIME ON:当 SET STATISTICS TIME 为 ON 时,会显示语句的时间统计信息。为 OFF 时,不显示时间统计信息。

    10000 * from Measure_heat select top 10000 * from Measure_heat order by id desc

    显示结果:

    image

    2. SET STATISTICS IO:生成的磁盘活动量的信息。

    10000 * from Measure_heat select top 10000 * from Measure_heat order by id desc

    显示结果:

    image

    对于逻辑读取、物理读取,lob读取等概念,微软的解释是:

    image

    对于lob的概念,我在网上找了很久没有找到,最后在msdn官方的Libiary里发现,再一次证明查资料还得去官方网站啊。

    3. SET SHOWPLAN_ALL ON。 如果要显示语句在查询时执行计划等,可以使用该语句显示。执行计划是我们进行索引优化的有力依据。

    10000 * from Measure_heat

    显示结果:

    image

    上图的结果比较难看明白,我们可以用图形可视化的方式来查看,显示更直观一些。

    image

    4. 还有一些与性能分析有关的SET函数,如

    SET STATISTICS XML  --XML格式输出查询计划
    SET STATISTICS PROFILE  ON --执行的各个查询都返回其常规结果集

    比如profile 设为on时,结果同SET SHOWPLAN_ALL ON的结果很像,多了rows和Executes两列,分别指个运算符生成的实际行数和运算符执行的次数:

    image

    选择比努力更重要。亡羊补牢,穷则思变比后悔抱怨更有价值。脚踏实地,讲究而不将就。人生路还长,暂时的错误不是终点,不思进取、甘于现状才是你人生的死穴。
  • 相关阅读:
    struts2 action 之间的跳转
    json格式字符串用jquery.parseJSON()出现的问题 Uncaught SyntaxError: Unexpected token ' Uncaught SyntaxError: Unexpected number (index)
    转:Java生成带有二维码图片的word文档
    PowerDesigner 15 进行 数据库反转到 数据库模型
    模型方案参数更改 对比栏入选模型方案 图表效果对比 已不在项目中使用
    久违的博客园
    [转]不要if else的编程
    希望
    eclipse修改源码导出jar包
    compareTo 比较器
  • 原文地址:https://www.cnblogs.com/lj820403/p/7252476.html
Copyright © 2011-2022 走看看