This tiny data structure saves incident.io millions of queries
3-Second Blueprint (English)
- A Bloom filter uses a compact bit array and seeded hash functions to return fast 'definitely not' answers with zero false negatives.
- Adding a 512-bit, 7-hash Bloom filter in PostgreSQL skipped costly JSONB deserialization batches, cutting P95 API latency from 5s to 300ms.
- About 10 bits per item yields a 1% false-positive rate, but bits cannot be unset, requiring column recomputation when attributes change.
Bloom FiltersPostgreSQL JSONBSeeded Hash FunctionsTail-Latency Tuning
3-Sekunden-Fazit (Deutsch)
- Ein Bloom-Filter nutzt ein kompaktes Bit-Array und Hash-Funktionen für schnelle ‚Definitiv-nicht‘-Antworten ohne falsch-negative Treffer.
- Ein 512-Bit-Filter mit 7 Hashes in PostgreSQL sparte teure JSONB-Deserialisierungen und senkte die P95-Latenz von 5 s auf 300 ms.
- Rund 10 Bits pro Element ergeben 1 % Fehlalarme; da Bits nicht löschbar sind, erzwingen Attributänderungen eine Neuberechnung der Spalte.
Bloom-FilterPostgreSQL JSONBHash-FunktionenP95-Latenzoptimierung
Note / Hinweis: Blueprints are AI-generated educational summaries (0% Politics · 0% Religion · 0% Brainrot) and do not constitute medical, legal, or financial advice. / KI-generierte Zusammenfassung zu Bildungszwecken – ersetzt keine medizinische, rechtliche oder finanzielle Fachberatung.