0

我有 2 个版本的 solr 在我的机器上工作。说SolrVer1SolrVer2

SolrVer1已经应用了以下关于字段类型的词干提取方法text_en_splitting

<filter class="solr.KeywordMarkerFilterFactory" protected="protwords.txt" ignoreCase="true"/>
 <filter class="solr.PorterStemFilterFactory" ignoreCase="true"/>

SolrVer2已经应用了以下关于字段类型的词干提取方法text_en_splitting

<filter class="solr.SnowballPorterFilterFactory" language="English" protected="protwords.txt"/>

它对于常规搜索几乎相同,但是在使用通配符搜索时,通配符搜索不会给出语法上的结果 SolrVer1

与搜索类似 ,与 .相比ray*,返回的数据非常少。当我观察结果时,我发现它不返回只有and的数据。SolrVer1SolrVer2SolrVer1rayrays

我不知道我应该SnowballPorterFilterFactory在哪里使用,我应该在哪里使用PorterStemFilterFactory。它们的优缺点是什么?

任何人都可以对这种行为有所了解吗?

谢谢

4

2 回答 2

1

需要知道词干分析器输出什么rayrays.

尝试使用 Porter 词干分析器在线工具对它们进行词干:http: //qaa.ath.cx/porter_js_demo.html。它输出rai!这就是你没有得到任何ray*与 Porter stemmer 匹配的原因。

这是雪球词干分析器的工具:http: //snowball.tartarus.org/demo.php。这输出ray,这就是你得到结果的原因rayrays

您可能需要阅读此内容以比较两个词干分析器:http ://snowball.tartarus.org/texts/introduction.html

看起来像雪球一样是为了解决波特的这些缺点而设计的。

于 2012-08-23T22:09:53.520 回答
0

分析仪

On wildcard and fuzzy searches, no text analysis is performed on the search word.

由于在查询时没有对通配符搜索进行分析,因此在查询期间将应用词干分析器。
结果会有所不同,具体取决于词干分析器产生的内容。

于 2012-08-24T07:34:31.263 回答