gpt4 book ai didi

asp.net - 如果使用 uniqueidentifier 作为主键,可扩展性是否有问题?

转载 作者:行者123 更新时间:2023-12-04 06:48:43 25 4
gpt4 key购买 nike

ASP.net 成员资格提供程序用户数据库使用 uniqueidentifier作为主键。这是否会导致潜在数百万用户的可扩展性问题?

最佳答案

在 SQL Server 中使用 GUID 作为主键(因此默认情况下是集群键)会导致性能非常差。由于 GUID 的随机性,它们会导致表上出现大量聚集索引碎片。如果您有多个条目,您将不得不不断重建该聚集索引以获得甚至一半不错的性能。

所以是的 - 我认为在任何超过几百个条目的数据库表中使用 GUID 作为主键/集群键是一个非常糟糕的主意 - 正如示例所示,即使某些 Microsoft 团队似乎也不关心这一点,提出糟糕的设计。

在 Kimberly Tripp 的优秀系列博客文章中阅读有关该主题的更多信息 - 索引女王对为什么这是一个非常糟糕的主意有深刻的见解,并提供了更多关于什么是好的聚集键的指示:

  • GUIDs as PRIMARY KEYs and/or the clustering key
  • The Clustered Index Debate Continues...
  • Ever-increasing clustering key - the Clustered Index Debate..........again!
  • 关于asp.net - 如果使用 uniqueidentifier 作为主键,可扩展性是否有问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3433622/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com