我对数据库还比较新,并且一直在考虑在我的项目中使用 UUID 作为主键,但是我读到了一些东西,让我对性能更加感兴趣。
目前,我正在使用 uuid
数据类型,其默认值设置为 gen_random_uuid()
。
首先,我想知道: UUID 作为主键会造成性能下降吗?
如果有的话...
- 是否有任何优化提示,例如,如果 PK 是顺序的,但另一个字段包含 UUID,特别是用于公开展示,是否有帮助?
- 是否有任何类似的替代方法可能更具性能?
(我还没有处理任何可观度量规模的数据;这更多是一个理论问题。)
nextval('untitled_table_id_seq'::regclass)
的int4
字段。感谢您指出这一点! - Obvious_Grapefruit