sql-server – 重建索引对SQL Server有多长时间?

前端之家收集整理的这篇文章主要介绍了sql-server – 重建索引对SQL Server有多长时间?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我最近继承了一个非常大且非常混乱的数据库,需要清理它.为了对大小有所了解,主数据库目前包含3个大表,每个表大约有3亿行,占用大约225GB的存储空间.每天添加超过500万行.

由于磁盘空间不足(前任没有存档旧数据或管理它的大小),我被迫从最大的表中删除了大约2.8亿行.这个过程需要25个多小时才能完成,在此期间需要从面向客户的应用程序中切断数据库.

现在,我需要重新索引表,因为选择和插入需要很长时间.但是,我不能无限期地使数据库脱机,我需要能够估计执行reindex所需的时间.我之前没有重新索引过如此大的表格,所以我没有任何好的参考点可以借鉴.

主表包括一个集群的,单调递增的主键,以及一个非唯一的非集群键.我有足够的磁盘空间来执行reindex.

所以我的问题是这样的:大概这个人会花多长时间?估算重建索引时间有什么好的经验法则?

解决方法

没办法估计需要多长时间 – 这么多不同的东西都会产生影响.与 Paul writes about the length of a CHECKDB类似,非常类似的东西会与索引等相关.最好的答案是它过去需要多长时间?如果您无法确定,那么下一个最佳选择可能是在类似的非生产环境中尝试它,但即使这样也不一定匹配(即并发问题等会有所不同).

作为旁注,您可能希望在sql 2005及更高版本中查看ONLINE INDEX OPERATIONS …我无法添加第二个超链接,但谷歌“在线索引操作sql server”并单击顶部链接.

猜你在找的MsSQL相关文章