我正在考虑将Redis用于下一个项目(内存中的,快速的),但是现在我遇到了一个问题,即弄清楚它如何以及是否可以真正实现我的目标。目标是存储“大量”(数百万)个固定长度的位串,然后使用输入(查询)位串在数据库中进行搜索。搜索意味着返回满足以下条件的所有内容:
查询&值=查询
例如。如果查询中设置的所有位也都设置在该值中,则返回该键,例如。 Bloom-filter尽管在我的工作 Realm 中通常不是那样称呼的。
我找到了RedisBloom模块,但是我已经可以从外部程序中使用我的Bloom过滤器(位字符串),并且只想使用RedisBloom进行存储和搜索(存在命令)。因此,在我的情况下,“添加”命令应按原样使用输入,而不是再次对其进行哈希处理。
那可能吗?如果没有其他建议?
最佳答案
不,这是不可能的,因为RedisBloom在这种意义上是一个“黑匣子”-它管理自己的数据结构。