使用顺序guid的目标是,您可以使用聚簇索引,而不使用通常存在于聚簇索引中的高级别碎片,如果它是常规GUID,那么正确?Sequential Guid主键列应该是聚簇索引吗?
2
A
回答
1
是的,你是对的。
6
首先阐明,一主键和聚簇索引是2个独立且不同的东西,即,一个没有耦合到另一(PKS可以非聚集,聚集索引可以是非PKS)。
给定,我想你问的更“如果一个顺序GUID作为一个聚集索引”。这是一个加载的问题,但Kimberly Tripp has discussed this可能是我见过的任何人中最好的。请注意,文章反驳了PK,但在文章中,她提到了这种考虑主要适用于聚集索引选择与PK。
假设您已经决定使用GUID作为群集密钥(可能会也可能不是这种情况),但使用顺序GUID很可能是非顺序GUID的优越选择,但是至少有一种情况是非顺序的GUID可能是首选的(尽管非常罕见,非常先进的情况下,你必须基本理解你的系统和SQL服务器,以至于你毫不怀疑这应该被使用 - 会必须处理存储设备上的热点,并在群集的不同位置传输大量写入内容)。
相关问题
- 1. 非主键列上的聚簇索引或非聚簇索引?
- 2. 为什么主键应该是聚簇索引?
- 3. 我应该摆脱Guid列上的聚簇索引
- 4. SQL Server性能:非聚簇索引+ INCLUDE列与聚簇索引 - 等效吗?
- 5. GUID PK + INT IDENTITY聚簇索引+合并复制+外键
- 6. 聚簇索引
- 7. 改变聚簇索引列
- 8. 我可以拥有没有聚集索引的主键吗?我也可以拥有多值聚簇索引吗?
- 9. 当Guid是聚集索引时,通过Guid搜索表更快吗?
- 10. SQL - 主键,聚簇索引,自动增量
- 11. 如何停止DataContext.CreateDatabase为表的主键创建聚簇索引?
- 12. Sql Server,复合主键和聚簇索引
- 13. 从非聚簇更改主键聚集
- 14. SqlServer聚簇索引存储(> 1列)?
- 15. 了解聚簇索引
- 16. 插入聚簇索引表
- 17. 使用IN时,在非主键列上使用聚簇索引vs =运算符
- 18. 当主键无法使用时,聚簇索引的最佳选择是什么?
- 19. 混淆了聚簇索引和非聚簇索引。包含5个疑问
- 20. 尽管有聚簇索引,SQL Server仍在使用非聚簇索引
- 21. SQL Server中唯一标识符列上的聚簇/非聚簇索引
- 22. 聚集索引的外键VS主键
- 23. 检查表列上是否存在非聚簇索引
- 24. 如何将聚簇主键转换为非聚簇而不丢失SQL Server 2005中的引用外键
- 25. 在SQL中禁用聚簇索引的方法和哪个列会创建默认非聚簇索引?
- 26. SQL Server中主键和唯一聚簇索引之间的性能差异
- 27. 将主键添加到具有现有聚簇索引的表中
- 28. Azure无法识别聚簇索引
- 29. H2数据库:聚簇索引支持
- 30. 更改sybase中的非聚簇索引
感谢您提供更多的信息,希望以后能够让他人受益。 – 2009-11-18 18:24:35