Sid*_*ney 9 index sql-server index-tuning
我正在测试一些索引,并希望对哪些索引表现更好(主要是索引中字段的顺序和指定的其他字段)进行一些 AB 测试。
我有正在测试的数据库的备份,但该备份需要很长时间才能恢复。我更希望能够创建索引 foo,收集性能指标,然后删除 foo 以将数据库返回到索引前状态并创建索引 bar。这是索引创建的工作方式,还是索引的创建会以某种方式改变表,而删除索引无法撤消?
更长
表上的索引更改(创建、重建、删除等)会使计划缓存中的任何相关计划失效,并导致下次执行相关查询时重新编译新计划。
如果数据库的数据在原始计划被缓存和新计划重新编译之间发生了变化,则可能会生成与原始计划不同的计划。
实际上,由于您只是对数据库副本进行 A/B 测试,而我假设数据库副本不会主动更改,那么是的,Erik是准确的。删除索引很可能会导致在后续运行时为您的查询缓存相同的原始执行计划 - 这意味着您的数据库将有效地返回到之前的状态。
归档时间: |
|
查看次数: |
1749 次 |
最近记录: |