我想知道當我在MySQL中使用UUID作爲主鍵時,如何或會影響服務器的性能。當我在MySQL中使用UUID作爲主鍵時,如何影響性能
0
A
回答
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是一個貧窮從性能角度來看(由於聚集索引),他們有一個基準來證明這一點。
1
UUID長度爲36個字符,即36個字節。 INT是4個字節,其中TINYINT,MEDIUMINT和BIGINT的變體均小於36個字節。
因此,對於您插入的每條記錄,您的索引將分配更多空間。 另外,UUID花費更多的時間來計算與增加整數相反的值。
至於它對系統有多大影響,很難給出實際的數字,因爲存在各種因素 - 系統負載,硬件等等。
相關問題
- 1. Postgres中的UUID主鍵,插入性能影響?
- 2. 使用UUID作爲Django模型中的主鍵(通用關係影響)
- 3. 主鍵對SQLite性能的影響
- 4. 我應該在MySQL中使用int或char作爲id的/ uuid(主鍵)嗎?
- 5. 使用UUID作爲主鍵的Laravel 4
- 6. Android:使用UUID作爲SQLite的主鍵
- 7. 將UUID作爲PostgreSQL中的主鍵會給索引性能帶來不良影響嗎?
- 8. 行設計如何影響MySQL性能?
- 9. 脫機同步(性能UUID作爲主鍵)
- 10. 如何使用OrmLite和Postgres將UUID作爲主鍵處理?
- 11. 如何使用UUID作爲Hibernate實體的主鍵?
- 12. 更新具有相同值的主鍵時的性能影響
- 13. MySQL括號性能影響?
- 14. MySQL Workbench爲主鍵自動生成UUID
- 15. PHP的mysql_insert_id()爲MySQL的UUID()主鍵?
- 16. 數據庫中的UUID或GUID作爲主鍵。我應該何時使用它,何時不應該使用它?
- 17. 作爲主鍵不工作的UUID Laravel
- 18. 使用Oracle DBMS_WM.EnableVersioning時的性能影響
- 19. 如何在JAVA UUID中使用.net GUID作爲mongodb集合的主鍵
- 20. cassandra主鍵。性能影響如果整數與varchar
- 21. 使用UUID與UNIQUE索引相比作爲PK的影響?
- 22. innodb_log_file_size如何影響性能?
- 23. estimatedRowHeight如何影響性能?
- 24. MySQL - 也使用外鍵作爲主鍵
- 25. 當使用order by時,數字的長度是否會影響mysql的性能?
- 26. 使用UUID作爲在軌和多晶型關係的主鍵
- 27. 在mongo中使用slug作爲主鍵/ _id的性能劣勢?
- 28. 自定義UUID作爲主鍵
- 29. 實現作爲主鍵的UUID
- 30. MySQL UUID主鍵 - 由PHP或MySQL生成?
是的,我正在使用InnoDB ...我工作的公司中的一些應用程序使用UUID作爲主鍵,但我不確定是否應該繼續使用它。我想我不需要UUID鍵,所以也許我會停止使用它們。 – PachinSV 2011-04-27 19:31:38
是的,如果性能至關重要,請在將來避免它。 – tszming 2011-04-28 02:24:07