问题报告 纠错本页面

23.2. 经常重建索引

有时候我们值得用REINDEX命令周期性重建索引。

已经完全空的B树索引页会回收重新使用。然而,这可能是空间使用低效: 如果所有,但页面上的几个索引键已经被删除而页面仍分配。因此,使用模式其中大多数,但不是全部, 最终被删除的每个范围内的键将看到空间低效使用。对于这样的使用模式,推荐周期性重建索引。

对于非B-tree索引的膨胀潜能可能还没有很好地分析。 在使用非B-tree索引的时候保持对索引的物理尺寸的周期性监控是个很好的主意。

还有,对于B-tree索引,一个新建立的索引从某种意义上比更新了多次的访问起来稍微要快, 因为在新建立的索引上,逻辑上连接的页面通常物理上也连接在一起 (这样的考虑目前并不适用于非B-tree索引)。仅仅从提高访问速度角度出发, 可能我们也值得周期性的重建索引。