【发布时间】:2011-04-04 08:42:42
【问题描述】:
我有两个格式不同的数据库。每个数据库都包含个人数据,例如姓名、出生日期和地址。它们都相当大,一个是约 50,000 个条目,另一个是约 150 万个条目。
我的问题是比较条目并找到可能的匹配项。理想情况下,生成某种百分比,表示数据匹配的接近程度。我已经考虑了涉及生成多个索引或基于 Levenshtein 距离进行搜索的解决方案,但这些似乎都不是最佳的。索引很容易错过近距离匹配,而 Levenshtein 距离对于这种数据量来说似乎太昂贵了。
【问题讨论】:
-
有很多策略可以做到这一点,也有很多公司提供这种服务。根据数据质量,问题的范围从非常简单到非常困难。有时,当数据错误(例如输入错误的名称)并且结果必须 100% 准确时,会包含最终的“手动”传递。我想如果您对数据和预期结果指定一些条件,我们可能会提供更多帮助
-
我很确定我还需要最终的手动通行证。我很可能会生成一份报告,需要两三个人才能完成。不幸的是,我自己还不太了解这些数据。我熟悉的大约 150 万个条目数据集,因为这是我们的数据,但另一个决赛还没有最终规范,我什至没有收到关于它的结构或具体包含什么的提示。 ATM 我只是想计划一下程序。
-
假设输入错误或替代(即中间名首字母)名称是完全可能的,并且 100% 准确匹配是(可能是不可能的)目标。对于如何解决这个问题,您的第一个想法是什么?
-
@kutusof 好的。让我明确回答。这个问题太广泛了,我不想写一本书:)让我们看看我是否可以把一些想法放在一起