Skip to main content

Bloom Filters

  • Reference work entry
  • First Online:
Encyclopedia of Database Systems

Synonyms

Hash filter

Definition

A Bloom filter is a simple, space-efficient randomized data structure based on hashing that represents a set in a way that allows membership queries to determine whether an element is a member of the set. False positives are possible, but not false negatives. In many applications, the space savings afforded by Bloom filters outweigh the drawbacks of a small probability for a false positive. Various extensions of Bloom filters can be used to handle alternative settings, such as when elements can be inserted and deleted from the set, and more complex queries, such as when each element has an associated function value that should be returned.

Historical Background

Burton Bloom introduced what is now called a Bloom filter in his 1970 paper [1], where he described the technique as an extension of hash-coding methods for applications where error-free methods require too much space and were not strictly necessary. The specific application he considered...

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 4,499.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 6,499.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Recommended Reading

  1. Bloom B. Space/time tradeoffs in hash coding with allowable errors. Commun ACM. 1970;13(7):422–6.

    Article  MATH  Google Scholar 

  2. McIlroy MD. Development of a spelling list. IEEE Trans Commun. 1982;30(1):91–9.

    Article  Google Scholar 

  3. Mullin JK, Margoliash DJ. A tale of three spelling checkers. Software Pract Exp. 1990;20(6):625–30.

    Article  Google Scholar 

  4. Spafford EH. Opus: preventing weak password choices. Comp Sec. 1992;11(3):273–8.

    Article  Google Scholar 

  5. Babb E. Implementing a relational database by means of specialized hardware. ACM Trans Database Syst. 1979;4(1):1–29.

    Article  Google Scholar 

  6. Bratbergsengen K. Hashing methods and relational algebra operations. In: Proceedings of the 10th International Conference on Very Large Data Bases; 1984. p. 323–33.

    Google Scholar 

  7. Mackett LF, Lohman GM. R* optimizer validation and performance evaluation for distributed queries. In: Proceedings 27th International Conference on Very Large Data Bases; 1986. p. 149–59.

    Google Scholar 

  8. Cormode G, Muthukrishnan S. An improved data stream summary: the count-min sketch and its applications. J Algorithms. 2003;55(1):58–75.

    Article  MathSciNet  MATH  Google Scholar 

  9. Fan L, Cao P, Almeida J, Broder AZ. Summary cache: a scalable wide-area Web cache sharing protocol. IEEE/ACM Trans Network. 2000;8(3):281–93.

    Article  Google Scholar 

  10. Broder A, Mitzenmacher M. Network applications of Bloom filters: a survey. Internet Math. 2005;1(4):485–509.

    Article  MathSciNet  MATH  Google Scholar 

  11. Mullin JK. Estimating the size of a relational join. Inf Syst. 1993;18(3):189–96.

    Article  Google Scholar 

  12. Gremilion LL. Designing a Bloom filter for differential file access. Commun ACM. 1982;25(9):600–4.

    Article  Google Scholar 

  13. Mitzenmacher M. Compressed Bloom filters. IEEE/ACM Trans Network. 2002;10(5):604–12.

    Article  MATH  Google Scholar 

  14. Cohen S, Matias Y. Spectral Bloom filters. In: Proceedings of the ACM SIGMOD International Conference on Management of Data; 2003. p. 241–52.

    Google Scholar 

  15. Chazelle B, Kilian J, Rubinfeld R, Tal A. The Bloomier filter: an efficient data structure for static support lookup tables. In: Proceedings of the 15th Annual ACM-SIAM Symposium on Discrete Algorithms; 2004. p. 30–9.

    Google Scholar 

  16. Bonomi F, Mitzenmacher M, Panigrahy R, Singh S, Varghese G. Beyond Bloom filters: from approximate membership checks to approximate state machines. Comput Commun Rev. 2006;36(4):315–26.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Michael Mitzenmacher .

Editor information

Editors and Affiliations

Section Editor information

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Science+Business Media, LLC, part of Springer Nature

About this entry

Check for updates. Verify currency and authenticity via CrossMark

Cite this entry

Mitzenmacher, M. (2018). Bloom Filters. In: Liu, L., Özsu, M.T. (eds) Encyclopedia of Database Systems. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-8265-9_751

Download citation

Publish with us

Policies and ethics