varbinary 的索引维护

Adr*_*n S 2 index sql-server varbinary sql-server-2016 index-maintenance

我们有一个 SQL 2016 数据库,其中有一个 19 亿行的表,其中有一个 varbinary(255) 列,我们用它来存储同一个表中 nvarchar(2000) 字段的 HashBytes。

我们在 varbinary 字段上有一个非聚集索引,并且我们的索引维护脚本每 2-3 天对此执行一次 REORGANIZE。但这需要10多个小时才能完成。

有什么办法可以提高varbinary字段索引维护的速度吗?

Bre*_*zar 5

如果您有一个包含 19 亿行的表,我猜它的百分比变化率相当低。检查您每天实际插入/更新的行数 - 可能少于 1%。

在这种情况下,每 2-3 天重新组织整个表是没有意义的(特别是考虑到它需要 10 多个小时。)我会从每周(如果不是每月)对该表进行索引维护开始尺寸。

首先退一步问:“我试图通过进行索引重组来解决什么问题?” 如果答案是缓慢的 select 语句,那么对 19 亿行表进行索引维护就不是答案。