我有2个巨大的索引在ElasticSearch,我正在实现搜索自动完成使用完成建议,我需要有来自2个不同领域的不同索引的建议,但它不是那么有效
POST index1,index2/_search
{
"_source": "name",
"suggest": {
"my-suggest": {
"prefix": "milk",
"completion": {
"field": "name", ----------> it should be name in index 1
"size": 5 ,
"skip_duplicates": true
}
},
"my-suggest2": {
"prefix": "milk",
"completion": {
"field": "product_name", ----------> this field is only existed in index2
"size": 5 ,
"skip_duplicates": true
}
},
"my-suggest3": {
"prefix": "milk",
"completion": {
"field": "name", ----------> it should be name in index 2
"size": 5 ,
"skip_duplicates": true
}
}.
问题是,我如何在一个查询中获得这些不同字段的5个建议,目前我只从一个索引中获得建议,并且由于“Product_name”在www.example.com中不可用index1.it一些错误
illegal_argument_exception",
"reason": "no mapping found for field [brand_name]"
有人可以帮助我能够从多个索引生成suggester吗?
1条答案
按热度按时间w8ntj3qf1#
我会使用multi search,这样你就可以从index1中获得建议,而从index2中获得建议: