一 :问题-collapse搜索时出现:only keywords and numbers are accepted
描述:
这个问题是 ElasticSearch 在做collapse搜索时发生,发生的版本肯定是 5.0以上,否则不会出现。
错误提示已经说的很清楚了, collapse查询的字段类型只能是"keyword"或者"number"。
二:解决办法1-索引创建时指定好类型
PUT my-index
{
"mappings": {
"properties": {
"aircraft_type_search" : {
"type": "keyword"
}
}
}
}
只要索引创建时有那么查询就不会出错
三:解决办法2-已经来不及重建索引了,临时使用
POST /user_info/_search
{
"query": {
"match_all": {}
},
"collapse": {
"field": "address.keyword"
}
}
在做collapse查询时将字段做keyword
案例参考来自:Stack Overflow