SQL Server中的聚簇索引和非聚簇索引(二)

日期: 2009-03-19 作者:Laurence Schwarz翻译:曾少宁 来源:TechTarget中国 英文

最佳方案   测试,测试,反复地测试。在SQL Server 2005中有大量的工具可以用来帮助我们做出最佳选择。其中一个就是“Display Estimated Execution Plan”。通过按CTRL+L键,我们可以在SQL Server Management Studio上方的Query Menu中找到Display Estimated Execution Plan,      或者在SSMS的查询方框中的工具栏上。

     通过执行这个工具,SQL Server告诉我们它预计可能完成的任务。不用担心,它的结果通常都是正确的。在应用一个索引之前先查看一个查询估计的执行计划,然后再……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

最佳方案

  测试,测试,反复地测试。在SQL Server 2005中有大量的工具可以用来帮助我们做出最佳选择。其中一个就是“Display Estimated Execution Plan”。通过按CTRL+L键,我们可以在SQL Server Management Studio上方的Query Menu中找到Display Estimated Execution Plan,

  SQL Server中的聚簇索引和非聚簇索引(图二)

  或者在SSMS的查询方框中的工具栏上。

  SQL Server中的聚簇索引和非聚簇索引(图三)

  通过执行这个工具,SQL Server告诉我们它预计可能完成的任务。不用担心,它的结果通常都是正确的。在应用一个索引之前先查看一个查询估计的执行计划,然后再应用这个索引来看看我们所选择的索引是否提高了性能。

  SQL Server中的聚簇索引和非聚簇索引(图四)

  我们同时也可以执行Actual Execution Plan。我们也可以在查询菜单中找到它,通过按CTRL+M键,

  SQL Server中的聚簇索引和非聚簇索引(图五)

  或者点击工具栏的按键打开。

  SQL Server中的聚簇索引和非聚簇索引(图六)

  另外一个很好的工具是Tools菜单中的Database Engine Tuning Advisor。这个工具不仅有助于我们选择正确的索引实现,同时,还有助于我们决定执行SQL Server 2005新特性中的其中一个最佳查找:分区。但是,记住,分区只可以用在SQL Server 2005 Enterprise Edition中的生产系统中,并且与Standard Edition相比,它有一些附加费用。

  提高索引性能的最后一个可以考虑的最佳方案是:是否将一个索引结构移到不同的存储阵列中。如果我们目前的所有数据库对象都在同一个阵列或者即使是同一个阵列的多文件组上,那么将索引结构转移到RAID 1阵列会带来性能的大幅提升。我个人曾经成功地使用这个技术。

  总结

  总之,在这方面并没有硬性的规定。如果我们在刚刚应用了一个索引的表上显示实际执行计划,并且它显示表扫描仍在进行中,那么我们有以下选择:

  •在查询上保留索引并等待统计信息的逐渐提高
  •删除索引
  •在查询本身多花点时间进行优化

  在提高数据库性能上,我们要不断尝试新的东西。可惜的是,人们总是习惯性认为数据库是相对静态的,并且有时他们都非常不理解:“发生了什么?上周还是工作得很顺利的???”当数据库中的数据越来越多时,它就会发生变化。当数据库的功能越来越多时,它就会发生变化。当删除越来越多的数据时,它也发生变化。由于这些变化发生时,我们必须重新评估索引结构、性能调优的可能性。

  在Microsoft出版社出版上的Kalen Delaney的“Inside SQL Server 2005: The Storage Engine”有许多学习索引组件和页结构的好资料。同时,我还是Itzik Ben-Gan的超级粉丝。关于这一系列的内容,他出版了两本新书,即“Inside SQL Server 2005: T-SQL Querying”和“Inside SQL Server 2005: T-SQL Programming”。这两本书也在Microsoft出版社的,并且这两人都对这个主题进行了深入地分析。

翻译

曾少宁
曾少宁

TechTarget中国特约技术编辑,某高校计算机科学专业教师和网络实验室负责人,曾任职某网络国际厂商,关注数据中心、开发运维、数据库及软件开发技术。有多本关于思科数据中心和虚拟化技术的译著,如《思科绿色数据中心建设与管理》和《基于IP的能源管理》等。

相关推荐