【发布时间】:2009-05-25 14:23:20
【问题描述】:
我有一个带有唯一聚集索引 myId 的表 myTable,填充因子为 100% 它是一个整数,从零开始(但它不是表的标识列) 我需要向表中添加一种新类型的行。 如果我可以通过使用 myId 的负值来区分这些行,那可能会很好。
负值会导致额外的页面拆分并减慢插入速度吗?
额外背景: 该表作为数据仓库的 etl 的一部分存在,该数据仓库从不同的系统收集数据。我现在想容纳一种新型数据。我这样做的一种方法是为这些新数据保留负 ID,因此将自动聚类。这也将避免架构中的主要键更改或额外列。
答案总结: 100% 的填充系数通常会减慢刀片的速度。但不是顺序发生的插入,包括顺序否定插入。
【问题讨论】:
-
100% 填充因子绝对不是聚簇索引的好选择,正如 Mitch 所述 - 但这与正或负 INT 值无关。
标签: sql-server performance clustered-index