Solr 中与 DtSearch 选项对应的高级搜索选项

Posted

技术标签:

【中文标题】Solr 中与 DtSearch 选项对应的高级搜索选项【英文标题】:Advanced Search Option in Solr corresponding to DtSearch options 【发布时间】:2013-01-22 13:12:13 【问题描述】:

我们正在使用 solrnet 作为 .net Solr 客户端库,将应用程序中的搜索和索引模块从 DtSearch 替换为 Solr。

我们对 Solr/Lucene 比较陌生,需要一些帮助/指导来了解 Solr 中更高级的搜索选项。

当前应用程序使用 DtSearch 支持以下搜索选项:

1)单词或短语

2)准确的单词或短语

3)不是这些词或短语

4)一个或多个单词("A" OR "B" OR "C")

5)一个词与另一个词的n个词的接近度

6)数值范围 - 从 - 到

7)选项

。 Stemming(search* 查找搜索或搜索)

。同义词(搜索和查找查找或查找)

。在 n 个字母内模糊(p%arts 找到 paris)

。同音异义词(#Smith 也可以找到 Smithe 和 Smythe)

作为示例,生成的搜索查询将发布到 DtSearch 以用于以下用例:

    搜索短语:通用集合

    准确的短语:linq

    不是这些词:sql

    以下一个或多个词:ICollection 或 ArrayList 或 Hashtable

    接近度:4 个语言单词内的 csharp

    选项:

    一个。词干

    b.同义词

    c。 2个字母内模糊

    d。同音异义词

    搜索查询:generic* collection* generic& collection& #generic #collection g%%eneric c%%ollection "linq" -sql ICollection OR ArrayList OR Hashtable csharp w/4 language

我们已经能够进行简单的搜索(文件中的单数搜索 内容)与 Solr 的亮点。现在我们需要用 Solr/Lucene 替换这些选项。

谁能提供一些关于我们应该寻找什么/在哪里寻找的方向。

【问题讨论】:

【参考方案1】:

    单词或短语 Solr 提供对字段和跨字段的查询支持,并通过变量提升来控制相关性。 Solr 还提供各种各样的查询,例如短语查询、通配符、匹配前缀

    准确的单词或短语 您可以自定义 Solr 以处理短语匹配和精确单词匹配。

    不是这些词或短语Negative queries - Solr 支持布尔运算符,其中包括使用 -Not 的否定查询

    一个或多个单词(“A” OR “B” OR “C”)Boolean Operators - Solr 支持布尔运算符,包括 AND (+) OR 语法

    一个词与另一个词的 n 个词的邻近度Promixity Search - Solr 支持通过 ~ 运算符后跟斜率(邻近度差异)进行邻近度查询

    数字范围 - 从 - 到 Range Queries - Solr 支持数字和日期的范围查询。

    选项

    词干(搜索*查找搜索或搜索) Stemmer - Solr 具有内置的词干分析器,可以直接开箱即用。它还允许定义新的词干分析器 详情Language Analysis支持多种语言

    同义词(搜索和查找查找或查找)Synonym - Solr 通过基于文件的方法支持同义词处理。

    n 个字母内的模糊(p%arts 找到巴黎)Fuzzy search - Solr 支持使用 ~ 运算符进行基于模糊的搜索

    同音异义词(#Smith 还可以找到 Smithe 和 Smythe)Phonetic search - Solr 提供 phonetic 搜索,允许匹配拼写错误的单词。它开箱即用地支持 4 个可自定义的过滤器。

AnalyzersTokenizersTokenFilters的完整列表

【讨论】:

我是 SOLR 的新手,想实现自己的语音算法或修改SOLR 4.2.1 给出的算法(或者至少想尝试研究它们)但我似乎无法在源代码中找到相关.java 文件的正确位置。你能帮我找到像 Soundex 这样的正确文件吗? 我们还想从 dtSearch 切换到 Solr。我们想知道如何处理 pre/N 和 xfirstword。是否有等效的方法或方法来增强邻近引擎?

以上是关于Solr 中与 DtSearch 选项对应的高级搜索选项的主要内容,如果未能解决你的问题,请参考以下文章

使用solr模拟京东搜素功能

Solr solr对拼音搜索和拼音首字母搜索的支持

Solr5搜索引擎高级教程|Solr5视频

全文检索引擎:solr lucene

solr使用教程二面试+工作

Solr06-SolrJ的使用及其高级查询