`

solr属性multivalued使用

    博客分类:
  • solr
 
阅读更多

 

 

 

 

 
 
业务目的:
 数据在hive中,用   location:山东,河北,陕西  这种来存储,后入到hbase中,
现在将hbase数据导入solr后,同时期待 搜索 location:山东     location:河北      location:陕西 都能搜索到这条记录
 
 
处理流程:
 
solr schema.xml中, 
<field name="locaiton" type="string" indexed="true" stored="true" required="false" multiValued="true"/>
 
multiValued: 多值
 
然后在代码(map中),写法如下:
if("location".equals(fieldName)) {
   String[] vals = fieldValue.split(",");
   for(String val : vals){
       solrDoc.addField("location",val);
   }
}
 
这样,虽在在solr中查看的时候界面样子:
"location" :  [
     "山东",
     "河北",
     "陕西"
]
但是solr界面搜索  location:"山东" 都能搜索到,达到目的。
 
 
参考链接:
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics