在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提取器是否为组创建索引条目?
2条答案
按热度按时间mgdq6dx11#
架构正确。问题是它不是我用来设置bucket属性的原始schema。Yokozuna GitHub上的This问题是罪魁祸首。我在插入新数据后更新了模式,以为索引会重新加载。目前,他们没有。
n6lpvg4x2#
这个怎么样?你可以一次提取所有的基础,它是通用的
字符串