Apache 使用Solr和#x27;s EdgeNGramFilterFactory在索引时间与查询时间?

Apache 使用Solr和#x27;s EdgeNGramFilterFactory在索引时间与查询时间?,apache,solr,tokenize,Apache,Solr,Tokenize,我没有注意到很多差异,但是当您在索引时使用EdgeNGramFilterFactory时,文档术语本身会被分解成子字符串,然后您的搜索字符串会在这些子字符串上匹配,同样,在索引时,您输入的查询被分解成子字符串,然后在普通文档字符串上进行匹配 这是看待这个过程的正确方式还是我有误解 谢谢 根据Solr Wiki:- 可以在索引或查询时(或两者)执行边缘n-gram分析,但如本示例所示,通常更有用的是在索引时生成n-gram,所有n-gram索引在同一位置。在查询时,查询项可以直接匹配,无需任何n

我没有注意到很多差异,但是当您在索引时使用EdgeNGramFilterFactory时,文档术语本身会被分解成子字符串,然后您的搜索字符串会在这些子字符串上匹配,同样,在索引时,您输入的查询被分解成子字符串,然后在普通文档字符串上进行匹配

这是看待这个过程的正确方式还是我有误解

谢谢

根据Solr Wiki:-

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

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

我将其视为数组和Linkedlist。在数组中,元素彼此更接近,从而加快遍历速度