Bloom Filters - A Probabilistic Data Structure - LinkedIn
Bloom Filters - A Probabilistic Data Structure - LinkedIn
Bloom Filters - A
Probabilistic Data
Structure
Saurav Prateek
Engineer @ Google | Ex-SWE @ 42 articles Follow
GeeksForGeeks | Authoring engineering…
February 23, 2024
Open Immersive Reader
Introduction
Bloom Filters are compact data-structures that are
responsible for answering the membership queries. They
successfully filter out the elements which are not a part of
the set.
In summary the Bloom Filters are responsible for
answering whether an element is a part of a given set or
not. Suppose we have a list of elements present in a set,
say S. Now we want to check whether an element X is a
part of the set S or not. In this case Bloom Filters can
answer in two ways:
1. Element X can or can not be a part of Set S: The
Bloom Filters can respond with a Maybe! This means
that there is some probability for the element X to be
present in the set S. The more efficient the filters,
higher will be the prediction of probability for an
element to be present in the set.
2. Element X is definitely not a part of Set S: The Bloom
Filters can respond with a Definitely Not! This means
that there is a 0 probability for the element X to be
present in the set S. In this case we can be completely
sure that the element is not present in the set.
In this way Bloom Filters are always able to recognize True
Negatives but can not always recognize True
Positives and hence can generate some False Positives.
These data structures are generally used in those
scenarios where False Positives are accepted.
Conclusion
We discussed Bloom Filters in detail along with the
implementation process of a Standard Bloom Filter. We
also looked into how we can insert and search an element
in the Bloom Filter along with their run-time complexity
and code demonstrations.
Meanwhile what you all can do is to Like and Share this
edition among your peers and also subscribe to
this Newsletter so that you all can get notified when I
come up with more content in future. Share this
Newsletter with anyone who might be benefitted from this
content.
Until next time, Dive Deep and Keep Learning!
Report this
Published by
Saurav Prateek 42 Follow
Engineer @ Google | Ex-SWE @ GeeksForGeeks | Authoring engineering n…
articles
Published • 1mo
37th edition in "Systems That Scale"! 🔥 ⚡
We discussed "Bloom Filters" a probabilistic data structure in depth. This edition
involve:
✅ Implementation of Standard Bloom Filters.
✅ Inserting an element into the Bloom Filters and Membership Queries.
✅ Code demonstration of the insertion and membership-query methods.
Read On! 💯
Reactions
…
12 Comments
Most relevant
Add a comment…
Deepak A. (He/Him) • 2nd 1mo
Morningstar | RNF Tech | TERI
Expected this article 😁
Like · 1 Reply · 2 Replies
Saurav Prateek • 2nd 1mo
Engineer @ Google | Ex-SWE @ GeeksForGeeks | Authoring
engineering newsletter with 25K+ Subs | 50K+ Linkedin | Content
Creator | Mentor
Deepak A. haha.. was not able to explain this in depth at our
session 😄
Like · 1 Reply
Deepak A. (He/Him) • 2nd 1mo
Morningstar | RNF Tech | TERI
Yes
Like Reply
Sagar Maheta (He/Him) • 2nd 1mo
Founder @ Code Engine | 8+ YOE | JavaScript, C++, Python, C#,
Angular, React Native | Proficient in Software Development, Client
Communication, Team Leadership, and Project Management. |
Immediate Joiner.
Keep em coming, I've read most of your pdfs about system design and i
like how in few words you manage to describe a lot.
Like · 1 Reply · 1 Reply
Saurav Prateek • 2nd 1mo
Engineer @ Google | Ex-SWE @ GeeksForGeeks | Authoring
engineering newsletter with 25K+ Subs | 50K+ Linkedin | Content
Creator | Mentor
Sagar Maheta Thanks! 😃
Like Reply
Load more comments