首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >布卢姆,布谷鸟过滤器对数字来说太大了

布卢姆,布谷鸟过滤器对数字来说太大了
EN

Stack Overflow用户
提问于 2022-02-12 23:13:54
回答 1查看 151关注 0票数 0

我试图使用布卢姆/布谷鸟过滤器来检查我是否已经存储了两个数字f.e的元组。(7,25),(47,1576),.等

代码语言:javascript
复制
In [12]: from cuckoo.filter import ScalableCuckooFilter                                                                                                                      

In [13]: c = ScalableCuckooFilter(initial_capacity=1000000, error_rate=0.0001)                                                                                               

In [14]: c.filters[0].buckets.buffer_info()                                                                                                                                  
Out[14]: (140042688086032, 8500000, 'big', 0, 8500000, 0, 0, 0)

In [15]: 8500000/(1024*1024)                                                                                                                                                 
Out[15]: 8.106 MB

为了存储数字,我需要每个数字2字节,所以1mln *4字节=3.8Mb

所以过滤器比数据大!

是否有适合于内存占用较低的数字的方法或结构?

EN

回答 1

Stack Overflow用户

发布于 2022-04-21 14:50:24

对于杜鹃过滤器和布鲁姆过滤器等近似成员资格查询的大小有一个下限。它是-log2(epsilon),对您来说是13.3位。您可以通过使用凸带滤波器来接近这一点。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71096638

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档