SQLServer索引碎片和解决方法

SQLServer索引碎片和解决方法

ID:47069927

大小:76.04 KB

页数:8页

时间:2019-07-14

SQLServer索引碎片和解决方法_第1页
SQLServer索引碎片和解决方法_第2页
SQLServer索引碎片和解决方法_第3页
SQLServer索引碎片和解决方法_第4页
SQLServer索引碎片和解决方法_第5页
资源描述:

《SQLServer索引碎片和解决方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、SQLServer索引碎片和解决方法          毫无疑问,给表添加索引是有好处的,你要做的大部分工作就是维护索引,在数据更改期间索引可能产生碎片,所以一些维护是必要的。碎片可能是你查询产生性能问题的来源。?,oMvnBn0J`(g{2Ns#a0那么到底什么是索引碎片呢?索引碎片实际上有2种形式:外部碎片和内部碎片。不管哪种碎片基本上都会影响索引内页的使用。这也许是因为页的逻辑顺序错误(即外部碎片)或每页存储的数据量少于数据页的容量(内部错误)。无论索引产生了哪种类型的碎片,你都会因为它而面临查询的性能问题。e,

2、JM:Bb2dI

3、9Y0ITPUB个人空间}Z9L+E7L2y-n6E外部碎片D:`zsOA0ITPUB个人空间1y/mU,J6Na当索引页不在逻辑顺序上时就会产生外部碎片。索引创建时,索引键按照逻辑顺序放在一组索引页上。当新数据插入索引时,新的键可能放在存在的键之间。为了让新的键按照正确的顺序插入,可能会创建新的索引页来存储需要移动的那些存在的键。这些新的索引页通常物理上不会和那些被移动的键原来所在的页相邻。创建新页的过程会引起索引页偏离逻辑顺序。;x*Y!B$va"y&^Q9z0ITPUB个人空间F.mGr9Mu下面的例子将比实际的言论更加清晰

4、的解释这个概念。ITPUB个人空间D}'DVN,zB假定在任何另外的数据插入你的表之前存在索引上的结构如下2Ab&K'L-V0BS'pKjw0Z0(注:下面图片里应该是7和8,原文里是6和8):0

5、,s8

6、LI;K0ITPUB个人空间jN"{-m}eBH*W&Z@S:M0INSERT语句往索引里添加新的数据,假定添加的是5。INSERT将引起新页创建,为了给5在原来的页上留出空间,7和8被移到了新页上。这个创建将引起索引页偏离逻辑顺序。ITPUB个人空间e(Aiy!}2AITPUB个人空间?Ck2P+o,

7、LITPUB个人空间zHIA!@,OQ7d在有特定搜索或者返回无序结果集的查询的情况下,偏离顺序的索引页不会引起问题。对于返回有序结果集的查询,搜索那些无序的索引页需要进行额外的处理。有序结果集的例子如查询返回4到10之间的记录。为了返回7和8,查询不得不进行额外的页切换。虽然一个额外的页切换在一个长时间运行里是无关紧要的,然而想象一下一个有好几百页偏离顺序的非常大的表的情形。(Ok:e:Gr0ITPUB个人空间5S]D;Om内部碎片(VpH'lP7RZ;?P0ITPUB个人空间5iX'aZ9fz当索引页没有用到最大量时就产

8、生了内部碎片。虽然在一个有频繁数据插入的应用程序里这也许有帮助,然而设置一个fillfactor(填充因子)会在索引页上留下空间,服务器内部碎片会导致索引尺寸增加,从而在返回需要的数据时要执行额外的读操作。这些额外的读操作会降低查询的性能。ITPUB个人空间"ca#EF7s5rL'

9、k,TPITPUB个人空间v-@^5SC)wQ+d

10、*uJ9x怎样确定索引是否有碎片?7`U1Z@8yN5GU0B+F.@R@,r%_%NXO0SQLServer提供了一个数据库命令――DBCCSHOWCONTIG――来确定一个指定的表或索

11、引是否有碎片。ITPUB个人空间i]1{?Y,Y:d]xDBCCSHOWCONTIGWS{#OL6uvL1O0数据库平台命令,用来显示指定的表的数据和索引的碎片信息。ITPUB个人空间V2J"I8o-s#^6L)k`w1FX0C3G0DBCCSHOWCONTIG权限默认授予sysadmin固定服务器角色或db_owner和db_ddladmin固定数据库角色的成员以及表的所有者且不可转让。ITPUB个人空间:

12、1TePCRQM语法(SQLServer2000)ITPUB个人空间*I8{q^DITPUB个人空间J

13、yT]rI&p-X3T6DBCCSHOWCONTIGITPUB个人空间#^

14、E

15、{4SH!Y[({table_name

16、table_id

17、view_name

18、view_id}d_3nr]/b-a0[,index_name

19、index_id]3u0JfVk0c:s0)E*b}ZO)sQPq"n0]ITPUB个人空间Y;^/Oy[WITH{ALL_INDEXESITPUB个人空间0RQ$m!r5v^pG1~

20、FAST[,ALL_INDEXES]ITPUB个人空间"}B,P3G6J']9a{

21、TABLE

22、RESULTS[,{ALL_INDEXES}]ITPUB个人空间;O#z_^

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

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

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