是否需要按时间间隔在 MS sql 服务器上重建非聚集索引
Is it require to Rebuild NonClustered Index on MS sql server on Time interval
数据库:MS SQL Server 2008 R2 或更高版本
我有一个 table 有超过一百万条记录。
在此 table 上创建聚簇索引和非聚簇索引。
每天在同一 table 中添加大约 1000-1500 条记录,在此报告每天生成此数据后。
我是否必须在插入记录之后和生成报告之前重建非聚集索引?
要么
每周重建索引?
以便快速输出报告
Is it required?
否,但强烈建议密切关注碎片级别。您对作为索引一部分或包含在其中的列执行的操作(插入、删除和更新)越多,产生碎片的可能性就越大。
具有碎片化的索引会影响某些阈值的性能。正如 Rajat 所提到的,挑战取决于了解您需要多久重建一次以及何时重建。时间安排取决于您每周、每天甚至每小时的工作量和桌子的大小。多久执行一次取决于对记录执行的操作量和您的性能要求。
数据库:MS SQL Server 2008 R2 或更高版本
我有一个 table 有超过一百万条记录。 在此 table 上创建聚簇索引和非聚簇索引。 每天在同一 table 中添加大约 1000-1500 条记录,在此报告每天生成此数据后。
我是否必须在插入记录之后和生成报告之前重建非聚集索引? 要么 每周重建索引?
以便快速输出报告
Is it required?
否,但强烈建议密切关注碎片级别。您对作为索引一部分或包含在其中的列执行的操作(插入、删除和更新)越多,产生碎片的可能性就越大。
具有碎片化的索引会影响某些阈值的性能。正如 Rajat 所提到的,挑战取决于了解您需要多久重建一次以及何时重建。时间安排取决于您每周、每天甚至每小时的工作量和桌子的大小。多久执行一次取决于对记录执行的操作量和您的性能要求。