0

在 Riak 中,我有这个user带有user索引的基本模式(我省略了 riak 特定的字段_yz_id等):

<?xml version="1.0" encoding="UTF-8" ?>
<schema name="user" version="1.5">

 <fields>
   <field name="email"    type="string"   indexed="true"  stored="false"/>   
   <field name="name"     type="string"   indexed="true"  stored="false"/>   
   <field name="groups"   type="string"   indexed="true"  stored="false" multiValued="true"/>

   <dynamicField name="*" type="ignored"  indexed="false" stored="false" multiValued="true"/>

   ..riak-specific fields.. 

 </fields>

 <uniqueKey>_yz_id</uniqueKey>                                                 

 <types>                                                                       
   <fieldType name="string"  class="solr.StrField"     sortMissingLast="true"/>
   <fieldType name="_yz_str" class="solr.StrField"     sortMissingLast="true"/>
   <fieldtype name="ignored" class="solr.StrField"/>                           
 </types>

</schema>

我的用户 JSON 如下所示:

{
   "name" : "John Smith",
   "email" : "jsmith@gmail.com",
   "groups" : [
      "3304cf79",
      "abe155cf"
   ]
}

当我尝试使用此查询进行搜索时:

curl http://localhost:10018/search/query/user?wt=json&q=groups:3304cf79

我没有docs回报。

为什么是这样?JSON 提取器是否为组创建索引条目?

4

1 回答 1

0

架构是正确的。问题是它不是我用来设置存储桶属性的原始模式。Yokozuna GitHub 上的这个问题是罪魁祸首。我在插入新数据后更新了架构,认为索引会重新加载。目前,他们没有。

于 2015-03-23T02:03:27.433 回答