【问题标题】:Text Search Algorithm文本搜索算法
【发布时间】:2012-01-19 09:22:02
【问题描述】:

我有一个大约百万行的表格,其中包含 500-600 个单词的文本,我正在这些文本中搜索单词。但是从时间方面来看,在文本中迭代行和搜索效率不高。有什么想法吗?

【问题讨论】:

  • 你用什么方法来存储表数据?平面文件? MySQL?对于您的问题,这是一条相当重要的信息
  • mssql varchar(max) 在表中,但我可以更改存储方法。 c#,我正在使用的 mssql。

标签: algorithm search text indexing


【解决方案1】:

【讨论】:

    【解决方案2】:

    有了这些稀缺的信息,我建议你看看inverted indexes。据我所知,易于为您的案例建立和快速检索。也很容易在任何类型的数据库环境中实现,以防您无法切换到已经支持它们的数据库。

    如果您提供更多信息,也许其他解决方案也可以。

    【讨论】:

    • 但我也在使用 levenshtein 方法(edit_distance)来查看两个单词(用户输入的单词和数据库文本中的下一个单词)是否相似。我们如何在相同的方法中使用倒排索引和 levenshtein。我正在考虑。因为如果在文本中找不到“猫”,我想给出回复,也许您正在搜索“帽​​子”,有这样的文字包含“帽子”或用户输入了 quute,回复“我认为您正在寻找”相当”'。
    • 如果你想同时使用倒排索引和 levensthein,你可以在 trie 中实现倒排索引。如果操作正确,尝试支持 Leventhein 查找。然后每个叶子将包含所有匹配文档的列表。请下次在问题中提供更详细的信息,以便其他人直接找到好的答案。
    猜你喜欢
    • 1970-01-01
    • 2011-07-23
    • 2011-09-04
    • 2014-02-03
    • 1970-01-01
    • 2011-05-29
    • 1970-01-01
    • 2021-02-22
    • 2011-08-16
    相关资源
    最近更新 更多