我需要存储一个大的哈希集,最多能够包含大约 2 亿个 40 位值。将其存储为 2 亿 64 位值是可以接受的(尽管有 2 亿 * 16 位丢失)。
要求是:
内存占用很小(磁盘空间不是问题,内存才是问题)
fast contains(long l)
and add(long l)
方法(比 SQL 快得多)
embedded
免费并且没有令人讨厌的许可(没有 Berkeley DB)。 LGPL 很好。
没有误报,也没有误报,所以像基于磁盘的布隆过滤器这样的东西不是我想要的
SQL is not我在这里追求什么。
因为我真的觉得我更追求一些东西fast像这样(注意该解决方案比 SQL 解决方案快得多):
基于磁盘的快速哈希表? https://stackoverflow.com/questions/495161/fast-disk-based-hashtables
Google有这样的Java API吗?
我仅使用“键”的基于磁盘的快速键/值对实现是否有效?
或者是其他东西?
我宁愿不重新发明轮子。
如果您能负担得起 128 GB 磁盘,则每 40 位值可以存储一位。
然后,您可以使用随机访问文件来检查某个位的设置或更改它。您不必插入任何值或维护索引。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)