什么哈希算法最适合在Postgres中生成唯一ID?

时间:2013-04-11 14:39:56

标签: postgresql hash

我有一个大的地理空间数据集(约30万条记录),我目前正在将其导入PostgreSQL数据库。我需要一个唯一的ID来分配给每个记录,但是一个递增的整数可能是一个坏主意,因为如果我需要重新导入数据集,它就无法可靠地重新创建。

似乎在确定的投影中,几何数据的唯一散列可能是可靠标识符的最佳选择。能够计算Postgres中的哈希将是有益的,速度也将是有益的。

鉴于这种情况,我的选择是什么?是否有一种非常适合这种情况的特定方法?

1 个答案:

答案 0 :(得分:2)

如果您需要一个依赖于(并且可以从中重新创建)数据的唯一标识符,那么最直接的选项似乎是MD5哈希,它包含在Posgresql中(不需要额外的库)和是非常有效的 - 对于这种情况 - 安全。

pgcrypto module提供了额外的哈希算法,例如SHA1。

当然,您需要声明要散列的数据是唯一的。