我在my_index
中有两个ES_TYPE一个定义为父(用户),另一个定义为子(user_property)
user_property具有以下映射:
PUT /my_index/_mapping/user_property
{
"user_property": {
"properties": {
"name": {
"type": "keyword",
},
"value": {
"type": "keyword"
}
}
}
}
我想让所有用户都拥有一些属性(比如property1,property2)及其属性值,所以为了做到这一点,我使用 inner_hits 创建以下查询,但查询响应时间因内部高度而呈指数级大
GET /my_index/user/_search
{
"query": {
"bool": {
"must": [
{
"has_child": {
"type": "user_property",
"query": {
"bool": {
"must": [
{
"term": {
"name": "property1"
}
}
]
}
},
"inner_hits": {
"name": "inner_hits_1"
}
}
},
{
"has_child": {
"type": "user_property",
"query": {
"bool": {
"must": [
{
"term": {
"name": "property2"
}
}
]
}
},
"inner_hits": {
"name": "inner_hits_2"
}
}
}
]
}
}
}
有没有办法减少这个时间?