What are Bloom filters?

A Bloom filter is an efficient data structure that is used to test whether an element is a member of a set. It is both time and space efficient implementation for searching an element.