我的solr db有多个架构,如下所示
***Part of Schema 1***
<field1>
<field2>
<field3>
<field4>
<field5>
***Part of Schema 2***
<field6>
<field7>
<field8>
当我执行q = *:*
时,我会获得<field6>
,<field7>
和<field8>
,但不会显示其余字段。
我只能在q对象中field1:'value'
时选择字段1-5。
有没有办法知道6-8是schema-2的一部分而1-5是schema-1的一部分
答案 0 :(得分:1)
根据您的搜索处理程序(如(e)DISMAX),您可以定义默认搜索字段。
或者您可以使用qf=
参数来定义字段,您想要搜索:http://wiki.apache.org/solr/ExtendedDisMax#qf_.28Query_Fields.29
如果您希望在solr中分离数据库模式,以便schema-1中的字段不知道schema-2中的字段,则可以使用2个不同的solr核心:每个模式一个。
有没有办法知道6-8是schema-2的一部分而1-5是schema-1的一部分
据我所知,Solr不支持数据库模式。 Field insight solr是一个领域。没有办法添加此字段来自的其他(元)信息。因此,您将无法根据原点过滤查询 - 除非通过定义查询字段或通过在核心中分离模式或类似的东西。