首页 > 解决方案 > 布隆过滤器中的指针 - 如何构造散列函数?

问题描述

我正在寻找在存储指针的布隆过滤器中使用的非加密哈希函数。

出于性能原因,我希望哈希函数具有较低的汉明权重,以最大限度地减少布隆过滤器中的误报查找。

我还想通过使用映射内存在虚拟内存空间中是稀疏的事实来最小化碰撞概率。例如,考虑一个只有两个非连续映射页的内存空间中的有效指针:

这里,低 12 位包含最多的信息,接下来的 36 位(在本例中)仅编码单个信息位,而高 16 位无关紧要。当输入是指针时,哈希函数如何利用这些知识变得更能抵抗冲突?

是否存在针对这些目标优化的散列函数?如果没有,我如何使用现有的非加密哈希函数来构造这样的哈希函数?

标签: data-structureshashbloom-filter

解决方案


推荐阅读