添加聚集索引,我是否应该删除非聚集索引

She*_*llz 1 sql-server sql-server-2014

我正在将聚集索引作为在线操作添加到具有 30 亿行的表中。到目前为止,它已经花费了 17 多个小时。如果我在另一个具有同样多行的表上再次执行此操作,我应该首先删除非聚集索引吗?

Han*_*non 6

删除非聚集索引将使堆更快地转换为聚集索引,因为这些非聚集索引不需要更新。

但是,您可能希望在转换过程完成后重新创建它们,因此请确保CREATE INDEX在删除脚本之前编写脚本。

请注意,删除非聚集索引意味着在转换期间运行的任何查询都可能运行得很慢,因为它们可能期望索引不再存在。