我目前正在编写一个消息队列,它需要我保留服务器已经看到的消息的历史记录。我为每条消息都有唯一的、固定大小的 ID 字段,这使得它变得微不足道。然而,我担心存储每条消息的 ID 的长期前景,以及随后比较它们之间的延迟。我当前的 ID 长度为 160 位(是的,SHA1)。
我最想知道的是是否有一种方法可以将多个 ID 压缩到一个字段中以节省内存,如果有,该算法的 false-pos 和 false-neg 率是多少消息压缩的功能。理想情况下,我并不真正关心假阴性率,但非常关心假阳性,这使得像 agrep
这样的比较相当无聊。
最佳答案
这个问题实际上并没有包含足够的信息来给出明确的答案,但您可能想看看 bloom filters .
关于algorithm - 用于与多个任意值进行比较的存储算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16752784/