首页 > 解决方案 > Solr 索引元组中的一些字段

问题描述

我是 Solr 的新手。我有一个关于 Solr 索引的问题。目前我们有以下配置来索引元组中的所有字段。

<!--contact fields -->
<field indexed="true" multiValued="false" name="contact" stored="false" type="TupleField"/>
<field docValues="true" indexed="true" multiValued="false" name="contact.first_name" stored="false" type="TextField"/>
<field docValues="true" indexed="true" multiValued="false" name="contact.last_name" stored="false" type="TextField"/>
<field docValues="true" indexed="true" multiValued="false" name="contact.email" stored="false" type="TextField"/>

我试图避免索引不需要的字段。在上面的配置中,我想删除 first_name 和 last_name 的索引。基本上我只想在电子邮件字段上有索引。

我是否需要删除上述配置中的字段(名字和姓氏)并提及

<field indexed="true" multiValued="false" name="contact" stored="false" type="TupleField"/>
<field docValues="true" indexed="true" multiValued="false" name="contact.email" stored="false" type="TextField"/>

或者我需要提及所有字段并使 docValues 和索引为 false?我想两者都是一样的。但是有人可以确认上述变化是好的吗?

标签: solrcassandra-3.0dse

解决方案


在生产使用中,您应该始终提及所有字段,这样您就不会突然从无模式模式添加的字段中获得奇怪的行为。

如果不需要,请保留配置并将 indexed 和 docValues 显式设置为 false。


推荐阅读