chr*_*ann 7 sql primary-key natural-key
如果我有一百个用户的表通常我会设置一个自动增量userID列作为主键.但是,如果突然我们有一百万用户或500万用户那么这变得非常困难,因为我希望开始变得更加分散,在这种情况下,自动增量主键将是无用的,因为每个节点将创建相同的主键.
解决方案是使用自然主键吗?我真的很难想到这群用户的自然主键.问题是他们都是年轻人,所以他们没有国家保险号码或我能想到的任何其他唯一标识符.我可以创建一个多列主键,但仍有机会,但重复次数发生微不足道.
有谁知道解决方案?
谢谢
Ode*_*ded 11
我想说暂时保持用户ID的自动增量.
当你确实有数百万用户突然涌入时,你可以考虑改变它.
换句话说,当你拥有它时解决问题."过早优化是万恶之源."
要回答这个问题 - 一些自动增量将允许您播种自动增量,因此您可以在不同的节点上获得不同的自动增量.这样可以避免这个问题,同时仍允许使用自动增量.
这里的标准解决方案是使用GUID.但是,它们在索引方面表现不佳.