布隆过滤器

来自姬鸿昌的知识库
跳到导航 跳到搜索

使用 guava 自带的布隆过滤器

        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>31.1-jre</version>
        </dependency>
    @Bean
    public BloomFilter<String> userAccountBloomFilter() {
        int size = 1000000;
        double fpp = 0.01;
        BloomFilter<String> bloomFilter = BloomFilter.create(Funnels.stringFunnel(Charset.defaultCharset()), size, fpp);
        //插入10万样本数据
        List<String> list = new ArrayList<>(); //从数据库检索得到的所有用户账户列表
        for (String userAccount:list) {
            bloomFilter.put(userAccount);
        }
        return bloomFilter;
    }