对于已经有主键(由4列组成的自然组合键)的大型事务表(1亿行,20 GB),添加标识列并使其成为主键对性能有帮助吗?
当前的主键(4列的自然复合主键)完成了这项工作,但是有人告诉我,您应该始终有一个代理键。因此,可以通过创建标识列并使其成为主键?来提高性能。
我正在使用Server 2008 R2数据库。
编辑:此事务表主要连接到定义表,并用于填充报表。
编辑:如果我确实添加了一个代理键,它就不会在任何联接中使用。将使用现有的关键字段。
编辑:这个表将没有子表。
发布于 2011-06-27 13:57:47
仅仅添加一个标识列并为其添加一个新的约束和索引是不可能提高性能的。该表将更大,因此扫描和寻找可能需要更长的时间。还将有更多的索引需要更新。当然,这一切都取决于你在衡量.以及在添加新列时是否打算对代码或数据库进行其他更改。添加身份列而不做其他操作可能是不明智的。
https://stackoverflow.com/questions/6493792
复制相似问题