> 5% 且 < = 30% |
ALTER INDEX REORGANIZE |
> 30% |
ALTER INDEX REBUILD WITH (ONLINE = ON)* |
* 重新生成索引可以联机执行,也可以脱机执行。重新组织索引始终联机执行。若要获得与重新组织选项相似的可用性,应联机重新生成索引。
这些值提供了一个大致指导原则,用于确定应在 ALTER INDEX REORGANIZE 和 ALTER INDEX REBUILD 之间进行切换的点。不过,实际值可能会随情况而变化。必须要通过试验来确定最适合您环境的阈值。
非常低的碎片级别(小于 5%)不应通过这些命令来解决,因为删除如此少量的碎片所获得的收益始终远低于重新组织或重新生成索引的开销。
注:rebuild和rebuild online的区别
1、当rebuild 时一般对原先索引进行INDEX FAST FULL SCAN。
2、当rebuild online的时不用原先索引而执行TABLE ACCESS FULL
3、rebuild和rebuild online都会发生sort,即需要用到temp表空间。
4、rebuild 会阻塞dml(curd等)语句而rebuild online则不会。
5、rebuild online时系统会产生一个SYS_JOURNAL_xxx的IOT类型的系统临时日志表,所有rebuild online时索引的变化都记录在这个表中,当新的索引创建完成后,把这个表的记录维护到新的索引中去,然后drop掉旧的索引,rebuild online就完成了。
ref:https://msdn.microsoft.com/zh-cn/library/ms189858(v=sql.105).aspx
转载于:https://www.cnblogs.com/justkeepmoving/p/7877975.html
原文地址:https://blog.csdn.net/weixin_33674437/article/details/94117721
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。