gpt4 book ai didi

sql-server - 使用 UuidCreateSequential/NewSequentialID 的碰撞几率

转载 作者:行者123 更新时间:2023-12-04 00:50:45 29 4
gpt4 key购买 nike

使用 UuidCreateSequential 时发生碰撞的几率是多少? ,或者它的包装器 NewSequentialID ?我发现的最具体的顺序 guid 是“比随机 guid 更有可能”。

将其与随机 guids 版本 4 进行比较——其中有大量有趣的统计数据:

  • 70 万亿 Guids 有 0.0000000004% 的碰撞几率。与每年被陨石撞击的几率相同 ( wiki )
  • 每年产生 100 万个 guid 的 10 亿台 PC 在 70,000 年后发生碰撞的几率很高 ( lipper, guids part 3 )
  • 2,600,000,000,000,000,000 代产生 1% 的碰撞几率

  • 但是亲爱的旧顺序指南呢?他有趣的统计数据在哪里?如果相关,假设使用现代版本的 SQL - 例如 2012/2014 和 windows 2008 或 2012。

    最佳答案

    除非你做一些愚蠢的事情,比如在你的服务器中没有网卡(或明确设置 mac 地址并复制 macaddrs),否则你不会得到重复。如果您没有网卡,则该机器的 guid 将是唯一的。

    阅读 ms documention page仔细地,它说,

    “使用 NEWSEQUENTIALID() 生成的每个 GUID 在该计算机上都是唯一的。仅当源计算机具有网卡时,使用 NEWSEQUENTIALID() 生成的 GUID 在多台计算机上都是唯一的。”

    您必须在字里行间阅读一点,但如果您不做愚蠢的事情,它们确实是独一无二的。

    添加评论

    有一个明显的警告,MS 文档可能有误。但是,如果您必须通过生成副本进行反证,则证明可能需要很长时间。 ms 完全有可能不使用生成的现代 guid,并且可能会暴露底层的 mac 地址。我似乎把我的源代码代码放错了地方,无法确定。 :-)

    关于sql-server - 使用 UuidCreateSequential/NewSequentialID 的碰撞几率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24898641/

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