一,聚集索引,表中各行物理顺序与索引键值的罗辑顺序相同,一个表只能有一个聚集索引,聚集索引通常可加快update与delete的速度;
二,非聚集索引,表中数据不按非聚集索引列的顺序存储,但非聚集索引的索引行中保存了非聚集索引键值与定位器,可以快捷的根据非聚集索引键的值来定位记录的存储位置;
在这里,我们需要用到填充因子(Fill Factor),填充因子是一个以百分比表示的数值,在重建索引的时候,填充因子的值决定了每个页面上要填充数据的空间百分比,以便保留一些剩余空间作为以后扩展索引的可用空间,以下代码演示了如何将填充因子设定为80,只有在高级选项打开的情况下才能设定填充因子:
- Use DatabseName;
- GO
- sp_configure 'show advanced options', 1;
- GO
- RECONFIGURE;
- GO
- sp_configure 'fill factor', 80;
- GO
如果填充因子的值是100,那么索引页就被会全部填充。我们一般考虑将填充因子设定为50到80中间的数值来保证添加新值的时候,不会发生页拆分。如果经常需要在索引末尾添加字段值的话,可以考虑将填充因子设定为90到100之间的值。最理想的状态是同时保证最少次数的的页拆分和索引重建。
本文介绍了数据库中的两种索引类型——聚集索引和非聚集索引,并解释了填充因子的概念及其在索引维护中的作用。聚集索引使数据按索引键的顺序存储,而非聚集索引则额外保存定位信息以便快速定位记录。填充因子用于控制索引页的数据填充程度,以减少页拆分和索引重建。
2万+

被折叠的 条评论
为什么被折叠?



