simhash 算法简单又高效.
但是问题来了,如何对亿级 hash 进行存储,同时达到高效 查找的目的
目前的做法:
将 64bit 的 hash 分为 8 片, 然后分别以每片的值做 key,其余所有作为 set 的 value 存储在 redis 中,
每次新来一个 hash 就将其分片,去 redis 查 8 次,然后遍历所有 再进行抑或得到海明距离小于 2 的结果.
这样下来 每次查询都需要 100ms 左右, 请问有更好的方式么?
|  |      1solos      2017-03-23 19:39:00 +08:00 可以分表吧 | 
|  |      2paradoxs      2017-03-23 19:42:42 +08:00 via iPhone hadoop | 
|  |      3xiusedelang      2017-03-23 19:46:47 +08:00 via Android 这个查询技巧在谷歌的论文里也给出来了吧 | 
|      4mooncakejs      2017-03-23 20:32:11 +08:00 via iPhone 用 8 个 redis | 
|  |      5wzha2008      2017-03-24 10:46:03 +08:00 | 
|  |      7996635 OP |