如何在solr中索引嵌套的json对象

时间:2013-01-21 09:32:04

标签: json solr indexing

我有一个像这样的json对象,

{  
"id" : "123",  
"name" : "aaa",  
"loc" : {  
 "lat" : "",  
 "lon" : ""  
},  
}  

在solr中我添加了一个像

这样的字段
<field name="loc" type="string" indexed="true" stored="true" multiValued="true"/>  

然后我尝试将json doc添加到solr
但是我看不到在solr中索引的'loc'对象。
我做错了吗?我是否需要在schema.xml中添加任何内容 有人可以帮我解决这个问题吗?

3 个答案:

答案 0 :(得分:1)

我担心你必须将嵌套对象展平为

loc_lat = value of loc.lat
loc_lon = value of loc.lon

当然,还有两个用于存储数据的新字段。

答案 1 :(得分:1)

您是如何添加JSON的?因为它看起来不像the format required by Solr

你需要遵守这一点。此外,如果这些纬度/经度确实是地理坐标,那么Solr有一个专用的geospatial support。虽然您需要在客户端或类似UpdateRequestProcessor之类的内容中将数据转换为适当的形状,但很可能ConcatFieldUpdateProcessorFactory

答案 2 :(得分:0)

发布到

/ solr的/更新/ JSON提交=真的分裂= /&安培; F = TXT:?/ **

请参阅http://lucidworks.com/blog/schemaless-solr-part-1/