问题与Solr的索引,索引的Solr链不完整

问题描述:

Analysis with Index [![][1]问题与Solr的索引,索引的Solr链不完整

在我的Solr,我得到索引运行分析之后这个结果。我有一些包含单词机器学习的文档,但似乎有些东西坏了,并且索引链没有完成。我可以为此找到解决办法吗?

字段类型为所搜索的值为:<field name="Skills" type="text_general" indexed="true" stored="true"/>

EDIT 1:

分析查询: Analysis with Query

我猜测的 “SF” 是一种词干过滤器 - 过滤器将删除常见的结尾以允许“机器”匹配“机器”,将“机器”存储为索引中的通用术语。只要在索引和查询时执行了词干分析,就应该得到您要查找的结果。

EdgeNGramFilter为令牌中的每个额外字母存储一个令牌,因此您为每个附加字母(您的过滤器似乎配置为3作为最小ngram大小)获得一个令牌(它将匹配查询令牌) 。

如果在搜索时也没有执行词干分析,查询machine将找不到任何匹配条件,因为索引后的标记已被存储为machin

使用分析页面上的“查询”和“索引”部分来查看每个部分是如何解析和处理的,并了解他们为什么不以两边相同的术语结束(结束令牌在双方进行比较,如果它们是相同的,则会出现一个匹配 - 这在接口IIRC中显示为稍暗的背景)。

+0

我也添加了查询部分。这里的SF有完整的单词。 – Kabhi

+0

但是那些SFs干滤器都是? synonymfilters?如果您将鼠标悬停在“SF”文本上,您可以看到完整的课程名称。您可能还希望将小写过滤器放在与之前相同的位置。添加字段定义也是有用的,但正如你所看到的 - 当查询令牌是'机器'时,'机器'是由索引产生的令牌。由于这些不匹配,你不会受到打击。 – MatsLindh

我不确定您的第一张图片代表什么,但是您的两张图片显示了不同的令牌过滤器顺序。

作为Stem过滤器的一个附注,kstem令牌过滤器是英语的高性能过滤器。所有术语必须已经小写(使用小写的过滤器)才能使此过滤器正常工作。

您的第一张图片显示您将LCF(LowercaseFilter)作为第一个标记过滤器。但你的第二个图像显示你有第一个筛选器运行,然后做LCF(LowercaseFilter),它不会工作