【发布时间】:2009-10-29 02:29:56
【问题描述】:
我正在编写一个简单的内容管理系统。 我需要存储外部计算的 SHA1 哈希值作为我最大表的主键。
我显然可以使用序列作为主键并索引 SHA1 十六进制字符串以进行查找... 但是,我正在寻找一个更优雅的解决方案,我将简单地使用 20 字节的 SHA1 计算值作为我将要在数据库表中插入/删除/更新的行的给定键。 是否有一种高效的存储类型可用于存储并稍后将 SHA1 键用作主键?
我显然需要 postgres 支持使用 20 字节的值作为键来完成这项工作。
有人有什么想法吗?
【问题讨论】:
-
顺便说一句,请记住所有哈希键都可能发生冲突,即使是 SHA1。
-
我不会担心与正确实现 SHA1 的哈希冲突 :) 见 stackoverflow.com/questions/297960/…
标签: postgresql primary-key sha1