【问题标题】:How to improve Search query efficiency in lucene?如何提高lucene中的Search查询效率?
【发布时间】:2017-02-27 08:14:52
【问题描述】:

我正在搜索我的应用程序。对于输入的搜索词(foo),

1) 我寻找完全匹配 (foo),如果它返回 NULL

2)我使用模糊搜索(foo~),如果它返回NULL

3) 我使用通配符 (foo*)。

这是一种有效的方法吗?或者有没有任何lucene 方法来做所有这些?

【问题讨论】:

    标签: lucene


    【解决方案1】:

    在 Lucene 中没有内置的方法可以做到这一点。但是,通常这种情况是在客户端的 Lucene 之外处理的。是的,根据我的经验,它非常有效,因为它通常可以提供高精度的结果。在互联网上的某些来源中,它被称为分阶段搜索

    例如你创建一个完全匹配的查询,比如说 TermQuery("field","foo"),如果这个查询什么都不返回,那么你使用 FuzzyQuery 和最后一个 PrefixQuery(我会推荐它而不是 WildcardQuery,对于你想要做的最后一个案例)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-07-20
      • 2013-03-11
      • 2021-09-22
      • 2013-09-26
      • 1970-01-01
      • 2021-12-11
      • 2019-04-27
      • 2022-01-02
      相关资源
      最近更新 更多