数据库

当前位置:澳门新莆京娱乐官网 > 数据库 > 索引填充因子与碎片

索引填充因子与碎片

来源:http://www.drgigabytes.com 作者:澳门新莆京娱乐官网 时间:2020-01-05 03:33

一.概述

    索引填充因子作用:提供填充因子选项是为着优化索引数据存款和储蓄和性质。 当创立或重复生成索引时,填充因子的值可规定每一个叶级页上要填写数据的上空百分比,以便在每后生可畏页上保存部分剩余存款和储蓄空间作为未来扩张索引的可用空间,举个例子:钦命填充因子的值为 80 表示每一个叶级页中校有 五分三的上空保留为空,以便随着向幼功表中添增加少而为扩张索引提供空间。

  填充因子的值是 1 到 100 之间的比重,服务器范围的暗许值为 0,那表示将完全填充叶级页。

 1.1 页拆分现象

   遵照数据的询问和改革的百分比,正确选拔填充因子值,可提供丰裕的长空,以便随着向基本功表中添扩大少而扩张索引,进而裁减页拆分的只怕。如果向已满的索引页增加新行(新行地方依照键排序法规,能够是页中任性行地点State of Qatar, 数据库引擎将把大概四分之二的行移到新页中,以便为该新行腾出空间。 这种结合称为页拆分。页拆分可为新记录腾出空间,可是实行页拆分或然供给开销一定的流年,此操作会消耗大批量能源。 其余,它还大概以致碎片,进而招致 I/O 操作增添。 假诺日常发出页拆分(大概过sys.dm_db_index_physical_stats 来查看页拆分情状State of Qatar,可通过使用新的或现存的填充因子值来重新生成索引,进而再度分发数据。

  填充值设置过低: 优点是 插入或更换时减少页的拆分次数。短处是 会使索引必要越多的囤积空间,并且会下跌读取性能。

  填充钱设置过高: 优点是 借使每贰个索引页数据都全体填满,当时select功能最高。缺点是 插入或改造时索要活动前边全部页,效能低。

二. 碎片与填充因子案例

   下边剖析在生养情状下,对长日子一个表的ix_1索引举办剖释。

-- 有一个PUB_Search_ResultVersions2表长期有增删改操作, 在很长一段时间运行后,查看碎片如下
dbcc SHOWCONTIG (PUB_Search_ResultVersions2,'ix_1')

  图片 1

    通过上海体育场所能够理解到平均页密度是29.74%,也正是里面碎片太多,现三个页的多寡存款和储蓄量才是例行叁个页的存款和储蓄量。扫描的页数是703页,涉及到了1九十三个区。上边重新维护索引

--重建索引
ALTER INDEX ix_1 ON dbo.PUB_Search_ResultVersions2 REBUILD

  图片 2

     通过上图能够见见,扫描页数独有了248页(原来是703页State of Qatar用了36区(原来是1玖拾贰个区卡塔尔,现等于豆蔻梢头页的实际上多少是事前三页的总的数量, 查询将会减削了汪洋的I/O扫描。

  假若一再的增加和删除改,最佳设置填充因子,暗中同意是0,也正是100%, 借使有新索引键排序后,挤入到四个已填满8060字节的页中时,就能够时有发生页拆分,爆发碎片,这里作者使用图形分界面来安装填充因子为85%(最佳通过t-sql来设置,做运维自动尊崇卡塔尔(قطر‎,再重新创设下索引使设置生效。

  图片 3

  下图能够观察平均页密度是85%,填充因子设置生效。能够在通过sys.dm_db_index_physical_stats重新查看该索引页使用数据。

图片 4

本文由澳门新莆京娱乐官网发布于数据库,转载请注明出处:索引填充因子与碎片

关键词: