Solr Word DelimiterFilter之前的ElisionFilter
在此Solr文档页面上,我看到以下评论: 注意:最好在安装之前使用ElisionFilter WordDelimiterFilter。这将防止非常慢的短语查询 有人能给我解释一下为什么会导致语速慢的问题吗? 实际上,我的WordDelimiterFilter配置可以在文件中工作,我不认为我需要ElisionFilter,因为它已经包含在WordDelimiterFilter配置中 我只是想知道对性能有什么影响…基于,如果在WordDelimiterFilter之前有ElisionFilter,那么Solr Word DelimiterFilter之前的ElisionFilter,solr,lucene,Solr,Lucene,在此Solr文档页面上,我看到以下评论: 注意:最好在安装之前使用ElisionFilter WordDelimiterFilter。这将防止非常慢的短语查询 有人能给我解释一下为什么会导致语速慢的问题吗? 实际上,我的WordDelimiterFilter配置可以在文件中工作,我不认为我需要ElisionFilter,因为它已经包含在WordDelimiterFilter配置中 我只是想知道对性能有什么影响…基于,如果在WordDelimiterFilter之前有ElisionFilter,
l'avion
将只生成一个令牌avion
。但是,如果ElisionFilter不存在,那么根据WordDelimiterFilter的设置,它可能会生成多个类似的令牌
l, avion, lavion
由于avion
无论如何都是由WordDelimiterFilter生成的,因此您可以将其视为ElisionFilter已经包含在其中
我猜关于慢速短语查询的注释意味着如果搜索了l'avion
,那么如果没有ElisionFilter,它将搜索多个令牌
更新:这篇文章明确了问题:它说,我们发现“艺术”这个词是作为短语查询“艺术”来搜索的。短语查询比布尔查询慢得多,因为搜索引擎必须将短语中单词的位置索引读取到内存中,并且需要更多的处理。
所以我猜问题是用双引号搜索,比如
“l'avion”
好的,我明白了,但是搜索3个令牌真的比搜索一个令牌慢吗?