Probabilistic Data Structures¶
Accepting bounded error probability enables dramatic space reduction - trading certainty for efficiency when approximate answers suffice.
Tension Addressed¶
Memory Usage vs. Time Performance
Recognizable As¶
Bloom filters; count-min sketch; HyperLogLog; skip lists; any "probably in set" or "approximately N distinct elements" pattern
Canonical Sources¶
Bloom, "Space/Time Trade-offs in Hash Coding with Allowable Errors" (1970); Flajolet & Martin, "Probabilistic Counting Algorithms" (1985)
Transfers To¶
Caching (negative cache), Distributed Systems (membership gossip), Analytics (cardinality estimation), Networking (packet deduplication)
The key insight is recognizing when certainty is unnecessary. Bloom filters accept false positives (never false negatives); HyperLogLog accepts estimation error. Both dramatically reduce space when the application tolerates bounded uncertainty.