Bloom filters are an interesting and somewhat unpopular data structure. They are a probabilistic data structure, which means that the outcome or the output of your problem is not always accurate. There are going to be some false positives, but the good thing is that Bloom Filters guarantee no false negatives. They are most helpful for determining whether an element is present in a set or not. They don't actually store the elements, which is one reason they are very efficient, and they use hash functions for speedup. However, they cannot be feasibly used to predict their availability in a given data set.
Understanding the concept behind bloom filters will give you a broader perspective so that you know when and how to apply them for the most relevant results to your problem.
Here are some useful resources to help you get started with bloom filters:
Wednesday, 10 February 2016