gpt4 book ai didi

mysql - 使用 mysql 或 sphinx 过滤搜索结果中潜在的重复项

转载 作者:行者123 更新时间:2023-11-29 13:43:10 24 4
gpt4 key购买 nike

我认为这是一个不太可能的事情......

我的数据库具有以下字段:标题、描述、日期、价格、哈希

目前,我生成一个 MD5 哈希,如下所示 md5($title.$desc.$date.$price) 并将其放置在每个项目的 hash 字段中,这样当一个新项目添加到数据库中时,我可以通过一种简单且相当可靠的方法来了解数据库中是否已存在具有相同详细信息的项目。

我想做的是扩展这个,所以匹配过程有点模糊。原因是我在数据库中看到很多重复的项目,其中描述可能只有一两个字符不同,或者价格可能略有不同。

数据库很大(3mill 行)并且是 INNODB。我还可以使用 Sphinx,如果它提供了一种在搜索返回类似结果时过滤掉它们的方法。

最佳答案

Sphinx(或其他“搜索引擎”)需要类似的“哈希”计算才能在查询时删除重复项。

sphinx 可能会帮助您,当您将项目插入数据库时​​,使用 sphinx 在数据库中搜索类似项目。您可以获得潜在重复项的“排名”列表。如果顶部的项目得分很高,您可以说它足够相似,然后将该事实存储在数据库中。

(我是如何做到的,表上有一个名为“grouper”的第二列,默认情况下它只是重复该项目的主键。但是如果找到重复项,则将其更改为该项目的 PK它重复。然后可以在该石斑鱼列上运行 mysql(或 sphinx!)GROUP BY)

关于mysql - 使用 mysql 或 sphinx 过滤搜索结果中潜在的重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17809852/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com