2011-04-26 61 views

回答

1

我想你正使用InnoDB(反正你應該......)

因此,閱讀從高性能的MySQL 2ED,第117頁以下章節:http://books.google.com.hk/books?id=BL0NNoFPuAQC&lpg=PA117&ots=COPMBsvA7V&dq=uuid%20innodb%20clustered%20index%20high%20performance%20mysql&pg=PA117#v=onepage&q&f=false

一般來說,UUID是一個貧窮從性能角度來看(由於聚集索引),他們有一個基準來證明這一點。

+0

是的,我正在使用InnoDB ...我工作的公司中的一些應用程序使用UUID作爲主鍵,但我不確定是否應該繼續使用它。我想我不需要UUID鍵,所以也許我會停止使用它們。 – PachinSV 2011-04-27 19:31:38

+0

是的,如果性能至關重要,請在將來避免它。 – tszming 2011-04-28 02:24:07

1

UUID長度爲36個字符,即36個字節。 INT是4個字節,其中TINYINT,MEDIUMINT和BIGINT的變體均小於36個字節。

因此,對於您插入的每條記錄,您的索引將分配更多空間。 另外,UUID花費更多的時間來計算與增加整數相反的值。

至於它對系統有多大影響,很難給出實際的數字,因爲存在各種因素 - 系統負載,硬件等等。

相關問題