是否可以使用 putAll of guava bloom filter 创建一个新的更大尺寸的 bloom filter?
Can putAll of guava bloom filter be used to create a new bloom filter of larger size?
Google guava 实现了经典的布隆过滤器。创建一个涉及指定插入次数和预期的误报概率。我想知道提供的 putAll 函数是否可用于创建一个新过滤器,允许比传递给它的布隆过滤器参数更多的插入,同时保留相同的 fpp。
没有。不会的。
根据 javadoc,当过滤器不兼容时,putAll
函数会抛出异常。如果两个布隆过滤器具有相同数量的哈希函数,则它们是兼容的;具有相同的位大小;有相同的策略和;有相同的漏斗。
哈希函数的数量和比特大小是从插入的数量和fpp率中推导出来的。创建具有相同 fpp 和更大插入次数的新布隆过滤器将导致不同的比特大小和哈希函数数量。
Google guava 实现了经典的布隆过滤器。创建一个涉及指定插入次数和预期的误报概率。我想知道提供的 putAll 函数是否可用于创建一个新过滤器,允许比传递给它的布隆过滤器参数更多的插入,同时保留相同的 fpp。
没有。不会的。
根据 javadoc,当过滤器不兼容时,putAll
函数会抛出异常。如果两个布隆过滤器具有相同数量的哈希函数,则它们是兼容的;具有相同的位大小;有相同的策略和;有相同的漏斗。
哈希函数的数量和比特大小是从插入的数量和fpp率中推导出来的。创建具有相同 fpp 和更大插入次数的新布隆过滤器将导致不同的比特大小和哈希函数数量。