One Hash Bloom Filters
jcalabro
82 points
10 comments
October 19, 2026
Related Discussions
Found 5 related stories in 102.0ms across 9,963 title embeddings via pgvector HNSW
- SequenceHash: Multihashing for the rest of us tob_scott_a · 22 pts · October 02, 2026 · 46% similar
- Hot Chips 2026: Applying High Bandwidth Flash (HBF) ksec · 50 pts · August 24, 2026 · 43% similar
- Show HN: UL-SMF – Open-source linear-complexity ~300x KV-cache compression liventruth · 11 pts · August 17, 2026 · 42% similar
- Show HN: OSS Cross-Harness self hosted registry and analytics for AI Agents haz3-jolt · 21 pts · July 21, 2026 · 41% similar
- Hash-consing MMDB search trees: 31% smaller files, identical lookups mmaia · 15 pts · October 14, 2026 · 41% similar
Discussion Highlights (5 comments)
gwittel
I hadn’t seen that one hash paper before. This is a really cool optimization over Miztenmacher. Do you have benchmark numbers with different input sizes you can share? I’ll have to read the paper and code more, but it seems like this would be amenable to supporting filter merges as well (as long as the new size doesn’t exceed the filters’ capacity).
FreakLegion
NB: You're trading non-negligible space efficiency here, which gets worse as you lower the false positive rate. Partitioning means uneven occupancy rates across partitions, and either you accept low occupancy (increased filter size overall) or you're pretty much guaranteed to have hot blocks (increased false positive rate for specific partitions).
hei-lima
Great post!
aappleby
You don't actually have to do this - you can stick with a power of 2 sized table and just gently mix the hash value to get each additional bit index. (source - I wrote MurmurHash/SMHasher and have used the above in my own bloom filters and cuckoo hash tables)
cperciva
While much cheaper than going to disk, computing k independent hashes per key is still a bit expensive for very high performance systems. Depends how big the bloom filter is. Most hashes are big and their bits are independent.