Sql server 2008 r2 复合主键索引维护

Sql server 2008 r2 复合主键索引维护,sql-server-2008-r2,indexing,Sql Server 2008 R2,Indexing,在一个大表上有一个由三部分组成的复合键Int,Int,Int 插入速度因碎片而降低 PK1未分割(插入内容有序且从未修改) 但PK2和PK3的碎片严重且迅速 我应该使用什么策略来维护索引 有没有办法用重建索引 PK1 fill factor 100 PK2 fill factor 10 PK3 fill factor 10 否-这是一个索引-在单个索引的列上不能有不同的填充因子。。。索引结构由(PK1、PK2、PK3)的条目组成,组合后的元组存储在页面上。只能为索引/页面设置填充因子,不能为

在一个大表上有一个由三部分组成的复合键Int,Int,Int 插入速度因碎片而降低

PK1未分割(插入内容有序且从未修改) 但PK2和PK3的碎片严重且迅速

我应该使用什么策略来维护索引

有没有办法用重建索引

PK1 fill factor 100 
PK2 fill factor 10
PK3 fill factor 10

否-这是一个索引-在单个索引的列上不能有不同的填充因子。。。索引结构由
(PK1、PK2、PK3)
的条目组成,组合后的元组存储在页面上。只能为索引/页面设置填充因子,不能为复合索引的各个部分设置填充因子


我的典型方法是对我怀疑存在碎片的索引使用70%或80%的数据,然后观察。看看它破碎的速度和严重程度。如果当天晚些时候无法忍受,则进一步降低填充系数。通常情况下,使用70-80%的填充因子,白天应该可以正常工作,如果每天晚上重建这些关键索引,系统应该可以正常工作。

否-这是一个索引-一个索引的列上不能有不同的填充因子。。。索引结构由
(PK1、PK2、PK3)
的条目组成,组合后的元组存储在页面上。您只能为索引/页面设置填充因子-而不能为复合索引的各个部分设置填充因子…@marc_这就是我所想的。我的策略应该是100填充因子,并且经常重建。或者我应该试试50%。现在,在加载两个小时后,该索引的碎片率为60%。我知道你试过什么。有没有一个填充因子我应该试试。把你的填充因子降低到这么低会增加你索引的大小。这可能不是一个好主意。你能给我们看看桌子的结构吗?很难说碎片是从哪里来的。更新:没有看到以前的评论忽略这一条我的典型方法是在我怀疑有碎片的索引上使用70%或80%的值,然后观察。看看它破碎的速度和严重程度。如果当天晚些时候无法忍受,则进一步降低填充系数。通常情况下,使用70-80%的Fillfactor,白天应该可以正常工作,如果每天晚上重新构建这些关键索引,系统应该可以正常工作。这就是表结构组合PK Int,Int,Int,Int,而不是其他数据。所有人都有FK关系。PK1按顺序加载。PK2和PK3随机加载。每个PK1大约有10行。使用insert values()一次加载1个PK1。我不介意在加载期间索引变大。一旦我们加载了数据,将以100%的速度重新编制索引