我必须为许多这样的文件编制索引:
POST /example/doc
{
id : "type-name",
foo: bar
}我想要检索所有存在类型的列表。例如
POST /example/doc
{
id : "AAA-123",
foo: bar
}
POST /example/doc
{
id : "AAA-456",
foo: bar
}
POST /example/doc
{
id : "BBB-123",
foo: bar
}请弹性弓给我一个清单,我有AAA和BBB。
我还使用自定义分析器解决了更新问题
"settings": {
"analysis": {
"char_filter" : {
"remove_after_minus":{
"type":"pattern_replace",
"pattern":"-(.*)",
"replacement":""
}
},
"analyzer": {
"id_analyzer":{
"tokenizer" : "standard",
"char_filter" : ["remove_after_minus"]
}
}
}
}发布于 2014-04-17 08:58:13
如果您保留了标准分析器,则id将在"-“处拆分。因此,如果您的类型小写和大写相同,则只需使用一个简单的facet查询即可。
curl -XPOST "http://localhost:9023/index/type/_search?size=0&pretty=true" -d
'{
"query" : {
{ "regexp":{ "id": "[A-Z]+" }
},
"facets" : {
"id" : {
"terms" : {
"field" : "id",
"size" : 50
}
}
}
}'应该给你一些你可以使用的东西。
https://stackoverflow.com/questions/23128436
复制相似问题