SQL Server跟踪数据实现索引优化向导

作者:shayang 时间:2009-02-13 17:14:00 

使用SQL Server事件探查器工具,你可用一个捕获到的跟踪来收集有关服务器的重要信息。与索引优化向导(Index Tuning Wizard,ITW)以及正确的常规索引信息配合,这种跟踪可帮助你调试SQL Server应用程序并优化性能。本文将逐步指导你获取跟踪数据,并在ITW中实际使用它。

SQL Server性能优化

请参考以下文章,了解如何优化SQL Server应用程序的性能:

优化SQL Server索引的小技巧;

使用索引调节向导调整应用程序的性能;

使用查询分析器调整SQL服务器脚本;

索引优化向导。

从SQL Server事件探查器捕获到的任何跟踪都可用于ITW。一旦收集好你的跟踪(收集到文件或数据库表中),就可运行ITW,并利用你刚才捕获的数据。

图A

选择一个向导

要初始化ITW(参见图A),请单击【运行向导】图标,再选择【管理】|【索引优化向导】。另外,还可直接在命令提示行中执行itwiz.exe,这在远程调节SQL Server时尤其有用。

接着(参见图B),你可更改事先选择的服务器,它应呈现为灰色,再从下拉列表中选择想优化的数据库。

图B

还可在图B中撤选或选择【保留所有现有索引】复选框。如果撤选,SQL Server就会尽最大努力来推荐最佳的索引架构,但同时也会增加操作时间,而且会对数据库带来最高的负荷。

还可让SQL Server为你创建索引视图,它将作为向导输出内容的一部分提供。索引视图可用于多种场合。图B最后一部分包含了优化模式选项。注意如果选择彻底优化,那么整个过程会花费可观的时间,具体取决于工作文件的大小、记录数以及你准备分析的索引数目。

在此过程中,SQL Server的性能会受到严重影响,所以在操纵这些选项时,要特别注意你的工作环境。例如,如果你有一个生产型OLTP数据库,但日志记录到一个OLAP服务器,那么应该针对OLAP数据库来运行向导,再将建议的更改应用于这两个系统。

图C

如图C所示,你可使用文件或数据库跟踪来初始化向导。第3个选项(在图C中呈现灰色不可用状态)只有在你从查询分析器中运行ITW时才可使用。显然,查询分析器允许你定位一个较小的问题集,而不必面对一个包容面更广的事件探查器跟踪。

图D

图D展示了高级选项。可在此设置3个参数。首先,你可限制ITW要在跟踪中使用的查询数。对于较大的跟踪,这有助于缩短ITW的工作时间。但是,这个选项的精确度不够高,因为一旦指定的数目低于查询总数,那么ITW使用的查询将是随机选择的。其次,你可指定索引最多消耗多少MB的空间。最后,你可设置ITW尝试实现的最大列数,默认是16个列。

图E

图E显示了你如何选择想让向导检查的表。显然,你的跟踪需要针对这些表捕获最有代表性的活动,向导才能最好地发挥作用。同样地,选择的表越多,优化时间越长。

图F

图F显示了向导的建议,你可选择要由向导采取的行动(如果有的话)。

图G

还可查看如图G所示的分析,更好地理解向导给出的建议。

图H

接着,你可选择是让SQL Server立即应用更改(如图H所示),还是安排在以后某个时间进行。另外,还可将包含了推荐更改的一个脚本保存下来。

图I

最后,在如图I所示的屏幕中,可以选择退回去查看以前的屏幕,选择完成,或者选择取消向导。

标签:SQL,Server,跟踪数据,索引,优化向导
0
投稿

猜你喜欢

  • Python中五种实现字符串反转的方法

    2023-11-08 00:22:12
  • 使用Python将Mysql的查询数据导出到文件的方法

    2024-01-17 21:36:22
  • python安装scipy的步骤解析

    2021-09-09 03:20:36
  • 仿6room网站图片链接效果

    2007-06-21 13:59:00
  • python BeautifulSoup使用方法详解

    2021-04-22 12:09:55
  • mysql中find_in_set()函数的使用及in()用法详解

    2024-01-25 18:32:38
  • 网站中美好的细节

    2011-07-13 18:43:07
  • pycharm自动生成文件注释和函数注释

    2023-10-07 04:17:18
  • ASP与MySQL的连接[图文教程]

    2010-03-14 11:21:00
  • Mac下使用HomeBrew安装python3

    2021-02-28 08:17:57
  • 深入浅析JavaScript函数前面的加号和叹号

    2024-04-18 10:55:41
  • Python函数关键字参数及用法详解

    2023-08-13 00:34:06
  • 数据库分页大全(mssql,mysql,oracle)

    2010-10-25 20:02:00
  • thinkphp5上传图片及生成缩略图公共方法(分享)

    2024-06-05 15:40:11
  • Go语言实现JSON解析的神器详解

    2024-05-28 15:23:17
  • Python使用conda如何安装requirement.txt的扩展包

    2022-03-13 23:01:18
  • 安装多个版本的TensorFlow的方法步骤

    2022-12-10 00:13:02
  • Python:Scrapy框架中Item Pipeline组件使用详解

    2021-04-18 22:22:47
  • python如何使用socketserver模块实现并发聊天

    2022-06-23 08:58:41
  • python贪吃蛇游戏代码

    2023-07-22 04:19:17
  • asp之家 网络编程 m.aspxhome.com