Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 即使使用fillfactor,索引碎片也会快速增长_Sql Server_Indexing_Database Fragmentation - Fatal编程技术网

Sql server 即使使用fillfactor,索引碎片也会快速增长

Sql server 即使使用fillfactor,索引碎片也会快速增长,sql-server,indexing,database-fragmentation,Sql Server,Indexing,Database Fragmentation,我正在使用SQL Server 2012,从几天前开始,我就注意到一些索引的碎片化正在快速增长。我读过不同的文章并应用了填充因子 首先,我将填充因子改为95并重建,一天后碎片率约为50%。所以我把填充因子降低到90,然后是80,但是一天后碎片再次达到50% 我需要一些帮助来找出不断增长的碎片的原因和解决方案 仅供参考,我将填充因子应用于索引级别,只有4-5个索引存在此问题。我已将填充因子应用于其他索引,它们工作正常 提前感谢。有许多因素会导致索引碎片。下面是其中一些因素 1.导致页面拆分的插入和

我正在使用SQL Server 2012,从几天前开始,我就注意到一些索引的碎片化正在快速增长。我读过不同的文章并应用了填充因子

首先,我将填充因子改为95并重建,一天后碎片率约为50%。所以我把填充因子降低到90,然后是80,但是一天后碎片再次达到50%

我需要一些帮助来找出不断增长的碎片的原因和解决方案

仅供参考,我将填充因子应用于索引级别,只有4-5个索引存在此问题。我已将填充因子应用于其他索引,它们工作正常


提前感谢。

有许多因素会导致索引碎片。下面是其中一些因素

1.导致页面拆分的插入和更新操作
2.删除操作
3.从混合数据块初始分配页面
4.大行大小

,因此,即使指定填充因子为70,也可能会出现页拆分。。进一步的索引碎片化是任何OLTP环境的“预期”和“不可避免”特征

所以,使用填充因子设置,sql server在重建索引时会留下一些空间,这仅在第一种情况下有用,这也取决于您的工作负载

所以我建议不要太担心碎片问题,除非你的工作负载进行了大量的范围扫描。下面是一些帮助你的链接

此外,您还可以使用Perfmon计数器/扩展事件和

参考文献:

我已经检查过,是的,表上有大量插入/更新和删除事务。但我仍然找不到解决办法。我怎么能修好它@游戏是战争如果使用此表的查询不在可接受的性能限制范围内,我会首先尝试优化这些查询,看看它们在有碎片和没有碎片的情况下是如何执行的,除此之外,我唯一能想到的选项是碎片整理