我目前正在实施一个包含大约100亿项数据集的哈希表。 其中大部分是重复的(约75%),所以“唯一”值的集合稍小一些。一个128位散列与两个不同的64位散列(非加密)?
我知道我无法避免100%的碰撞,但我想让他们至少不太可能。 这个想法是测试两个不同的哈希函数,假设如果一个哈希碰撞另一个哈希函数可能不会。请参阅:bloom-filter。
我现在的问题是 - 在统计学上与仅使用一个具有两倍大小的单个散列相同吗? 那么让我们说Murmur3 128而不是Murmur3 64 + CityHash 64?