现在我已将主键转换为GUID,如何修复性能?

时间:2008-12-06 02:03:36

标签: primary-key guid auto-increment toplink

我使用TopLink作为我的ORM和MySQL作为数据库。

我为我的一个表交换了GUID的自动增量主键(好吧,不是很好:我实际上使用的是一个随机的64位整数,但这对我的需求来说已经足够了。)

无论如何,现在甚至不使用密钥的查询都需要更长的时间。

我该怎么办?

4 个答案:

答案 0 :(得分:1)

如果您的表格被您要查询的字段编入索引。密钥的内容不应有任何明显的性能影响。他们可能还有其他东西。

答案 1 :(得分:1)

确保键列确实是PRIMARY KEY,因此是聚集(物理)索引。

确保您的索引符合您的常见问题。


随机整数?你意识到有机会击中相同的pri键吗?

答案 2 :(得分:1)

如果您在MySQL all rows are referred to by primary key中使用innodb表,那么如果您使用的是二级密钥,那么性能将受到影响。

答案 3 :(得分:0)

  

我有一个代表creationDate的字段。我如何强制我的表格相应地索引?

create index Table_creationDate on Table(creationDate);