如何在solr中编写嵌套的schema.xml?

时间:2014-03-14 03:41:01

标签: solr configuration schema solr4

如何在solr中编写嵌套的schema.xml

schema.xml中的文档说

<!-- points to the root document of a block of nested documents. Required for nested
document support, may be removed otherwise
-->
<field name="_root_" type="string" indexed="true" stored="false"/>

http://svn.apache.org/viewvc/lucene/dev/trunk/solr/example/solr/collection1/conf/schema.xml?view=markup

可以在

中使用

https://cwiki.apache.org/confluence/display/solr/Other+Parsers#OtherParsers-BlockJoinQueryParsers

用于嵌套以下项目的schema.xml是什么:

  • 人物字符串
  • 地址
    • 城市字符串
    • 邮政编码字符串

1 个答案:

答案 0 :(得分:11)

我知道这是一个老问题,但我遇到了类似的问题。修改我的解决方案,您需要添加到schema.xml的字段如下:

 <field name="person" type="string" indexed="true" stored="true" />
 <field name="address" type="string" indexed="true" stored="true" multiValued="true"/> 
 <field name="address.city" type="string" indexed="true" stored="true" />
 <field name="address.postcode" type="string" indexed="true" stored="true" />

然后当你运行它时,你应该能够将以下JSON添加到你的Solr实例并在查询中看到匹配的输出:

{
  "person": "John Smith",
  "address": {
      "city": "San Diego",
      "postcode": 92093
    }
}