- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
下载
下载
第12章 更新表索引和统计信息
数据库设计中两个经常被忽视的方面是性能和调整。很多时候,开发者—有时还有数据
库管理员 ( D B A ) —花大量的时间考虑调度,而数据库的优化方面则出现重大失误。 S Q L
S e r v e r 中有一些内部语句可以用于优化和检索数据库中的统计信息。本章将指导用户如何实现
这些语句,以及如何使用有用的工具来提高服务器的性能。
我们先开始介绍两种提高数据库性能的索引技术。这些技术体现了如何通过计划索引和表
设计以及创建和索引某列来提高查询效率。然后讨论 U P D ATE STAT I S T I C S ,它在数据被添加
进表之后优化索引。最后,介绍一下 D B C C语句,该语句提供了SQL Server 的性能统计信息。
12.1 索引性能和调整
很多时候,我们很少对如何实现有用的索引进行分析。但如果正确地创建索引,它可以
使应用程序更加有效。这里先了解一下索引机制的组成构件。第一个构件是表和索引的实际
设计。典型地,对于一个数据仓库,设计者为存储的数据建立许多索引来保证决策支持系统
(Decision Support System ,D D S )快速检索数据。在一个在线事务处理 (Online Tr a n s a c t i o n
P r o c e s s i n g ,O LT P )数据库中,使用太多索引对系统性能有害,因为系统不仅要将数据写到记
录中,而且还要更新每一个聚集或非聚集索引。在设计环节中,尤其是在实时事务处理中,
有如下面所述的两种能显著提高速度的方法。
12.1.1 设计快速的索引
第一种方法是与表相关的,表中的多个列可以组成主唯一键,称为复合键 (composite key) 。
除在一个表上建立复合键外,用户可以创建一个新列,该列包含那些定义复合键的列的数据
值。用户可以创建一个 VA R C H A R 列,它的长度是复合键的总长度;而后在这个新列中存储
复合键的值,从而使该列成为一个单列主键。如果用户索引该列,则会使表更新速度大大加
快。例如,用户将某四列组合成一个主键,用户不仅需要更新四个单独的索引,而且当添加
一个数据记录时,所有这四列组合起来进行扫描,以便写入一个记录。但是如果用户已经将
这四个字段结合起来形成一个单列,那么当更新或查询一个记录时,只需搜索一个索引即可。
存储新列时需要额外的硬盘空间;但不是全部的,通过创建一个更简单的索引方案来节约偏
移量的空间。注意索引也要被分配硬盘空间。
提示 如果用户创建一个列来保存多字段的集中值,就会使数据有不一致的危险。避
免这种情况的一种方法是在更新该新列的表上设置一个更新触发器,对新列的更新
会引起各个不同列的变化。
第二种方法是提供更快的查询,主要针对实时处理的数据。虽然当用户添加记录时,建
立多个索引会降低系统的性能,但是当用户运行对数据的查询时使用多个索引会提高系统的
性能。解决索引对系统性能的不同影响的一个方法是在表中并不建立额外的索引;而是创建
索引,运行查询,而后去掉索引。这种技术可能会对记录数目较少的表查询降低速度。但当
第1 2章 更新表索引和统计信息使用211
下载
表有很庞大的记录时,就会对性能有很大提高。
12.1.2 分布页面和步进存储数据
分布页面是优化表和索引的第二个构件。 SQL Server在运行查询时在内部搜索用于匹配
的索引。它而后为每一个要查找的索引创建一个分布页面。那么分布页面存储什么内容呢?
■ 逐步从第一个被索引列采样的数据值。
■ 索引密度,即索引中所代表重复行的平均数目。
什么是步进( s t e p p i n g ) ?假设用户拥有顺序数据的一个统计分组,为了引用,每 x个记录的
信息都作了书签式标记。它的概念类似于分布页面的工作机制。 x个记录解释成步进的数目。
数据的分组指向被查询的索引数据。
那么步进是如何工作的?假设一个页面占用 8 K B 空间,该页面附加一个 3 2个字节的头。
这样分布页面就有 8 160字节空间可用。下面是获得一个索引的步进数目的公式。对于可变列
索引,列宽取可变列的最大宽度。
您可能关注的文档
最近下载
- 陕西安信显像管循环处理应用有限公司.pdf VIP
- 2025年天津职业技术师范大学单招职业适应性考试必刷测试卷附答案.docx VIP
- 铅锌尾矿综合利用项目可行性研究报告.docx
- 建设工程施工项目每日“防高坠三检”检查记录表.docx VIP
- 《建筑施工高处坠落防治安全技术标准》.pptx VIP
- 天津职业技术师范大学单招物理试题答案2025 .pdf VIP
- 2025数智采购供应链发展报告-亿邦智库&中国物流与采购联合会-2025.pdf
- EPLAN Electric P8软件技能培训课件.ppt VIP
- 食堂消防安全知识培训课件.pptx VIP
- 热电运行部01炉内升降平台及脚手架搭设、拆除施工方案.doc VIP
文档评论(0)