Bloom Filter Cache Guard
Placing a Bloom filter in front of an expensive lookup so that keys which certainly do not exist never reach it.
The asymmetry a Bloom filter provides is exactly what a cache layer needs: a negative answer is certain, so the lookup can be skipped entirely, while a positive answer only means "check properly".
Where this earns its place: LSM-tree storage engines put one in front of each on-disk file so a read skips the files that cannot contain the key — which is most of them. Cache layers use one to stop penetration. Distributed systems use one to avoid shipping data the other side already has.
The parameters — size and hash count — set the false-positive rate; a rate of 1% typically costs around 10 bits per element, which is dramatically less than storing the keys.
The standard limitation is that a classic Bloom filter does not support deletion, since clearing a bit could break another key's membership. Counting Bloom filters and cuckoo filters solve that at the cost of more space.