我使用Apache Solr 8.6在Linux中使用POST工具对文档进行索引,如Apache Solr Reference Guide中所述。
POST工具命令
bin/post -c testcore /testdocs/
文档被成功索引。现在当我搜索字符串例如:Solr Admin UI中的hello,它将返回匹配的文档,并且我还可以查看_text_
字段中的文档内容,因为我已使用以下属性将内容存储在manage-schema.xml中
<field name="_text_" type="text_general" multiValued="true" indexed="true" stored="true"/>
它对文档内容进行索引并存储在_text_
字段中,但它也存储和显示文档属性,如_text_
字段中的内容类型和其他文档类型属性。
现在,我希望这些属性不应存储在_text_
字段中,而只应存储实际的文档内容。
solrconfig.xml配置文件
<requestHandler name="/update/extract" startup="lazy" class="solr.extraction.ExtractingRequestHandler">
<lst name="defaults">
<str name="lowernames">true</str>
<str name="fmap.meta">ignored_</str>
<str name="fmap.content">_text_</str>
</lst>
</requestHandler>
如果你能进一步指导我将不胜感激。
1条答案
按热度按时间jdzmm42g1#
您需要使用参数
uprefix
而不是fmap.<source_field>
,以便将未知字段名称Map到将被忽略的模式字段名称(您只能使用fmap来Map已知字段名称),因此在请求处理程序中,您应该具有:必须在模式中定义相应的动态字段,以处理这些未知字段(以及fieldType,在使用托管模式时不知道它是否已经存在):