使用具有UNIQUE索引的UUID与作为PK的影响?

时间:2014-10-16 18:04:38

标签: mysql

众所周知,当表格大小增加时,随机UUID作为PK的性能会如何恶化。非PK UUID列的UNIQUE索引会产生相同的影响吗?

2 个答案:

答案 0 :(得分:0)

在MySQL中,PRIMARY KEY索引和UNIQUE索引之间的唯一区别是:

  • PRIMARY KEY隐含NOT NULL
  • InnoDB根据PRIMARY KEY
  • 对磁盘上的行进行物理排序

但假设

  • UUID将被定义为NOT NULL无论如何
  • 永远不需要查询一系列(连续的)UUID

......应该没有实际差异。

答案 1 :(得分:0)

在做了一些研究之后,我发现PK的影响更为显着,因为它们默认用作聚簇索引,因此决定了表本身的聚类方式。具有随机值的非PK唯一索引肯定比具有顺序值的相同索引具有更大的影响,但它不会改变表的聚集方式。