什么是布隆过滤器的“快速”哈希函数?

时间:2014-01-26 07:38:46

标签: hash bloom-filter

假设我正在研究和调整布隆过滤器的散列函数,那么使用可能被广泛接受为“快速”的函数计算散列所需的最大循环数是多少?

1 个答案:

答案 0 :(得分:2)

这取决于你想做什么。

如果您使用布隆过滤器来避免磁盘I / O,那么在散列函数中花费更多时间可能是有意义的,这样您就可以尽可能少地进行散列冲突。例如,Bloom过滤器用于避免log structured merge tree的磁盘I / O.通常使用cryptographically secure hash function是有意义的,但类似的内容,例如xxhashMurmurHash

如果要使用bloom过滤器来避免内存中查找,那么您可能希望使用更快的哈希函数,例如输入的XOR,或使用Fletcher checksum

快速解释快速与慢速哈希函数的优缺点,以及一些测试are available here