【发布时间】:2019-07-04 12:01:48
【问题描述】:
我看到很多关于整数(增量)和 uuid 应该用于数据库 id 的辩论和文章。
介绍了整数和uuid的一些优缺点。
例如, 整数:快速,但可用大小有限(除非您使用 bigint) uuid:非常独特且安全得多,但速度慢,而且存储- 消费
然后,我想知道是否使用长度约为 10( varchar(10) )、由大小写字母和整数组成的随机字符串可以解决问题,因为它们的大小不是很大并且可以涵盖广泛的数据(62^10 种方式,如果 10 个字符)。
所以,我的问题是,这样做是好是坏?
【问题讨论】:
-
听起来您只是在使用更糟糕的 uuid——您确定现有的 uuid 生成是您系统中的瓶颈吗?
-
没有,但是我发现一些文章说使用 uuid 不是一个好主意,因为它需要更大的容量,所以我想知道是否应该使用它。
-
另外,我觉得我不需要为每个表上的每个id都使用uuid,例如,可以将小型数据存储在int中,因为这样更有效。然而,这种用法使系统变得复杂。
-
我认为我们使用“复杂”这个词的方式不同。
-
那么,在系统中同时使用 uuid 和 integer 是比较常见的,还是只使用两者之一?
标签: database database-design uuid