mongo 查询 - 使用哈希查找相似项目

问题描述 投票:0回答:1

注意:我知道这不是高性能查询。 这只是对如何进行搜索的好奇。


在 mongo 中,我存储代表我插入的对象的哈希值。

{
  "a": 694695,
  "b": 24654,
  "t": 1693920660000,
   ...
  'hash': "humX124"

},

当我搜索某个对象时,我首先计算哈希值并在数据库中查找哈希值。

利用哈希,如何过滤掉相似的项?

相似度可以通过计算汉明距离/编辑距离来找到。 https://en.wikipedia.org/wiki/Edit_distance

高编辑距离 = 非常不同的哈希值 = 非常不同的对象

低编辑距离 = 相似的哈希值 = 相似的对象

我们是否可以通过将 EditDistance(String,String) 函数和编辑距离最小过滤器传递给 mongo 查询来提出一些 mongo 查询来查询相似的项目?

示例

散列:hum123、humX124、dog345、donkey566

正在搜索类似的项目:hum024

最大编辑距离:2

result :具有哈希值 hum123humX124

的对象
  • 因为它们的编辑距离为2; 找到搜索词 hum024

谢谢

mongodb mongodb-query
1个回答
0
投票

您可以使用模糊哈希为相似的数据生成相同的哈希。这样你就可以使用常规的 mongodb 查询来查询哈希值。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.