2014-10-16 25 views
2

衆所周知,隨着表的大小增加,隨機UUID作爲PK的性能會如何降低。非PKUUID列的UNIQUE索引是否具有相同的影響?使用UUID與UNIQUE索引相比作爲PK的影響?

+1

有趣的問題,並沒有任何科學,我想它可能會降低類似。這可能會更好地問在http://dba.stackexchange.com – 2014-10-16 18:14:49

+0

我認爲。我會試一試。謝謝。 – 2014-10-16 19:13:31

+1

你會發現這個有趣的:http://iops.io/blog/storing-billions-uuid-fields-mysql-innodb/ – kums 2014-10-16 19:29:56

回答

0

在做了一些研究之後,我發現PK的影響更爲顯着,因爲它們默認用作聚集索引,因此可以確定表本身是如何聚集的。具有隨機值的非PK唯一索引肯定比具有順序值的相同索引具有更大的影響,但它不會改變表的聚集方式。

0

在MySQL,一個PRIMARY KEY索引和UNIQUE索引之間的唯一區別是:

  • PRIMARY KEY意味着NOT NULL
  • InnoDB的物理根據PRIMARY KEY列(多個)
在磁盤上的訂單行

但假設

  • UUID將被定義爲NOT NULL反正
  • 一個永遠需要查詢的範圍(連續)UUID的

...應該是沒有實際差別的。

+0

這聽起來不對。 PRIMARY KEY是聚簇索引。 – 2014-10-17 13:48:20

相關問題