对于存储128位UUID,有多个存储选项:
>一个字节[16]列
>两个bigint / long(64位)列
>一个CHAR(36)列 – 32个十六进制数字4个破折号.
>一个UUID数据库特定列,如果db支持它
从索引的角度来看哪一个最有效?如果db不支持专用的uuid类型,那么1,2,3是最佳候选者?
解决方法:
专用的uuid类型是Postgresql的最佳选择.很难说与其他数据库 – 一个人不可能实现一种存储效率低于简单字节类型的uuid类型.
同样在Postgresql中,如果你没有uuid类型,bytea将是存储UUID的合理方式.对于其他DB,它取决于它们如何存储二进制数据.
在可能的情况下,我强烈避免使用hex-with-dashes.比较,排序和存储的效率低下.
所以,真的,“不是(2)或(3)”.永远.使用(4)支持,(1)否则.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。