通过 sql server 2005 索引视图提高性能

通过 sql server 2005 索引视图提高性能

ID:14632088

大小:221.00 KB

页数:22页

时间:2018-07-29

通过 sql server 2005 索引视图提高性能_第1页
通过 sql server 2005 索引视图提高性能_第2页
通过 sql server 2005 索引视图提高性能_第3页
通过 sql server 2005 索引视图提高性能_第4页
通过 sql server 2005 索引视图提高性能_第5页
资源描述:

《通过 sql server 2005 索引视图提高性能》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、通过SQLServer2005索引视图提高性能(1)作者:出处:microsoft  (  ) 砖  (  ) 好  评论 ( )条 进入论坛更新时间:2005-11-1513:18关键词:SQL  SQLServer  SQLServer2005阅读提示:本文介绍了SQLServer2005EnterpriseEdition中经过改进的索引视图功能。文中对索引视图进行了说明介绍,并讨论了可通过该功能改善性能的一些具体情况一、索引视图多年以来,Microsoft®SQLServer™一直支持创建称为视图的虚拟表。通常,这些

2、视图的主要作用是:•提供一种安全机制,将用户限制到一个或多个基表的某个数据子集中。•提供一种机制,允许开发人员自定义用户通过逻辑方式查看存储在基表中的数据的方式。通过SQLServer2000,SQLServer视图的功能得到了扩展,实现了系统性能方面的收益。可在视图上创建唯一的聚集索引及非聚集索引,来提高最复杂的查询的数据访问性能。在SQLServer2000和2005中,具有唯一的聚集索引的视图即为索引视图。本文所讨论的内容适用于SQLServer2005,其中有许多内容也适用于SQLServer2000。从数据库管理

3、系统(DBMS)的角度看来,视图是对数据(一种元数据类型)的一种描述。当创建了一个典型视图时,通过封装一个SELECT语句(定义一个结果集来表示为虚拟表)来定义元数据。当在另一个查询的FROM子句中引用视图时,将从系统目录检索该元数据,并替代该视图的引用扩展元数据。视图扩展之后,SQLServer查询优化器会为执行查询编译一个执行计划。查询优化器会搜索针对某个查询的一组可能的执行计划,并根据对执行每个查询计划所需的实际时间的估计,选择所能找到的成本最低的计划。对于非索引视图,解析查询所必需的视图部分会在运行时被具体化。任何

4、计算(比如:联接或聚合)都在每个引用视图的查询执行时完成1。在视图上创建了唯一的聚集索引后,该视图的结果集随即被具体化,并保存在数据库的物理存储中,从而在执行时节省了执行这一高成本操作的开销。在查询执行中,可通过两种方式使用索引视图。查询可直接引用索引视图,或者更重要的是,如果查询优化器确定该视图可替换成本最低的查询计划中的部分或全部查询,那么就可以选定它。在第二种情况中,使用索引视图替代基础表及其一般索引。不必在查询中引用视图以使查询优化器在查询执行时使用该视图。这使得现有的应用程序可以从新创建的索引视图中受益,而不必进

5、行更改。注意索引视图是SQLServer2000和2005各版本的一个功能。在SQLServer2000和2005的Developer和Enterprise版本中,查询处理器可使用索引视图来解析结构上与该视图相匹配的查询,即便不按名称来引用视图。在其他版本中,必须按名称来引用视图,并对视图引用使用NOEXPAND提示来查询索引视图的内容。通过索引视图改善性能运用索引提高查询性能不算是一个新概念;但是,索引视图提供了一些借助标准索引无法取得的性能收益。索引视图可通过以下方式提高查询性能:•可预先计算聚合并将其保存在索引中,从

6、而在查询执行时,最小化高成本的计算。•可预先联接各个表并保存最终获得的数据集。•可保存联接或聚合的组合。该图说明了当查询优化器使用索引视图时,通常所能取得的性能改进。所列举的查询在复杂性上有所不同(比如:聚合计算的数量、所用表的数量或谓词的数量)并包含来自真实的生产环境的具有数百万行的表。在视图上使用非聚集索引其次,视图上的非聚集索引可提供更好的查询性能。与表上的非聚集索引类似,视图上的非聚集索引可提供更多选项,供查询优化器在编译过程中选择。例如,如果查询包含聚集索引所未涉及的列,那么优化器可在计划中选择一个或多个辅助索引

7、,避免对索引视图或基表进行费时的完全扫描。对架构添加索引会增加数据库的开销,因为索引需要持续的维护。在索引数量和维护开销间寻求适当的平衡点时,应谨慎权衡。通过SQLServer2005索引视图提高性能(2)http://www.51cto.com2005-11-1513:18出处:microsoft【导读】本文介绍了SQLServer2005EnterpriseEdition中经过改进的索引视图功能。文中对索引视图进行了说明介绍,并讨论了可通过该功能改善性能的一些具体情况二、应用索引视图的优点在实施索引视图前,分析数据库工

8、作负荷。运用查询及各种相关工具(比如:SQLProfiler)方面的知识来确定可从索引视图获益的查询。频繁发生聚合和联接的情况最适合使用索引视图。无论是否频繁发生,只要某个查询需要很长的响应时间,同时快速获得响应的开销很高,那么就适合使用索引视图。例如,一些开发人员发现为高级主管们在月末运行的报告,创建

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。