布隆过滤器是一种很好用的数据结构,在防止缓存穿透、大数据量处理时有很大的作用。 布隆过滤器由初始值都为0的位图数组和N个哈希函数两部分组成。比如当我们在写入数据库数据时,可以先使用N个哈希函数分别对数据进行哈希计算,得到几个哈希值,将哈希值与位图数组的长度取模,得到每个哈希值在位图数组中对应的位置,将这些位置设置为1。当要判断某个数据是否在数据库中时,就看它对应的各个位置是否都为1,只要有一个0就表示数据库一定不存在这个数据。