CountingBloomFilter可删除布隆过滤器

联合创作 · 2023-09-28 10:34

这是一个redisson实现的可删除布隆过滤器


引入依赖包




<dependency>
<groupId>com.github.slacrey</groupId>
<artifactId>redisson-extend</artifactId>
<version>1.1.2150</version>
</dependency>


创建Redisson连接




Config config = new Config();
config.useSingleServer().setAddress("redis://127.0.0.1:6379");
RedissonClientExtend redissonClientExtend = RedissonExtend.create(config);


创建过滤器




RCountingBloomFilter<String> bloomFilter = redissonClientExtend.getCountingBloomFilter("test2", 3);


getCountingBloomFilter(name, repeat)



  • name 过滤器名称

  • repeat 可重复次数


初始化过滤器




bloomFilter.tryInit(10000, 0.0001D);

boolean tryInit(long expectedInsertions, double falseProbability);



  • expectedInsertions 容量

  • falseProbability 错误率


使用方式




bloomFilter.add("test1");
bloomFilter.contains("test1")
bloomFilter.remove("test1")

浏览 20
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报