0

我正在从几个文件(excel 文件)中导入一组数据,这些文件每天都包含没有标识符的记录。然后将需要的数据存储在关系数据库 (Oracle) 中。

问题是文本可能与每个资源略有不同,因为没有唯一标识符,我需要以某种方式基于文本值进行比较。

例如,假设我从不同来源获取此信息:

Source A: The Dark Knight
Source B: Batman The Dark Knight
Source C: The Dark Knight 2008
Source D: The Dark Knight Rises

如果数据库已经保存了一个 item_name 为“The Dark Knight”的项目,那么当我从源 A、B、C 导入这些行时,我会得到一个“完全匹配”,但不是 D,因为那是一部不同的电影。

要知道的事情:

  • 该过程不是 100% 自动化的,因此如果不匹配,则会有用户交互手动匹配或创建新记录。
  • 尽管存在用户交互,但我希望将其保持在最低限度(尤其是在用户手动匹配项目之后)。

我如何着手解决它而不用每个项目的大量同义词膨胀数据库?

4

1 回答 1

0

2013 年 5 月 21 日更新

我发现: http: //matpalm.com/resemblance/

这是使用杰卡德系数。尽管我不确定它是否最适合我的复杂性原因,匹配 mxn 次,其中 m 是导入记录的大小,n 是可能长达数万的数据库记录总数。

于 2013-05-21T08:50:38.130 回答