繁体   English   中英

在索引时间与查询时间使用Solr的EdgeNGramFilterFactory有什么区别?

[英]What is the difference between using Solr's EdgeNGramFilterFactory at index time vs query time?

我没有注意到很多区别,但是是当您在索引时间使用EdgeNGramFilterFactory时,文档术语本身会分解为子字符串,然后您的搜索字符串会与这些子字符串匹配,同样,在索引时间,您输入的查询也会被破坏分解为子字符串,然后与普通文档字符串匹配?

这是查看此过程的正确方法还是我有误解?

谢谢!

根据Solr Wiki:-

https://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters#solr.EdgeNGramFilterFactory

边缘n元语法分析可以在索引时间或查询时间(或同时在两者)执行,但是通常,如本示例所示,在索引时间生成n元语法且所有n元语法在相同的位置。 在查询时,查询词可以直接匹配,而无需任何n-gram分析。

因此,如果您在索引时执行n-gram分析,基本上可以使生成的n-gram彼此接近,从而获得更好的性能。

我将其视为数组和链接列表。 在数组中,元素彼此靠近,从而可以更快地遍历。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM