주 쿼리가 있는데 두 개의 하위 쿼리에 대해 일치하는 숫자가 필요합니다. 솔로로 나는 facet.query이 필요합니다. 내가 누락 된 것은 value_count aggregation과 같은 간단한 doc_count
집합입니다.Elasticsearch의 쿼리를 통한 문서 수 집계 (solr의 facet.query와 유사)
제안 사항?
GET _search
{
"query": {
"match_main": {}
},
"aggs": {
"facetvalue1": {
"filter": {
"bool": {
"should": [
{"match": { "name": "fred" }},
{"term": { "lastname": "krueger" }}
]
}
},
"aggs": {
"count": {
"value_count": {
"field": "_id"
}
}
}
},
"facetvalue2": {
"filter": {
"term": { "name": "freddy" }
},
"aggs": {
"count": {
"value_count": {
"field": "_id"
}
}
}
}
}
}
- 사용 filter aggregation을 value_count 메트릭
_id
에 함께 : - 사용 Multi Search API (210)
예를
는 내가 좋아하지 않는 두 가지 해결책을 발견 >예 :
GET _msearch
{"index":"myindex"}
{"query":{"match_main": {}}}
{"index":"myindex"}
{"size": 0, "query":{"match_main": {}}, "filter": {"bool": {"should":[{"match": { "name": "fred" }},{"term": { "lastname": "krueger" }}]}}}
{"index":"myindex"}
{"size": 0, "query":{"match_main": {}},"filter": {"term": { "name": "freddy" }}}
는 그 솔루션 (2) 빠른 볼 수 있지만 match_main
같은 복잡한 쿼리를 상상! value_count:{"field":"_id"}
대신 doc_count:{}
이 있으면 솔루션 1을 선호합니다.
그러나 내 기본적인 질문으로 돌아가십시오 : elasticsearch에서 solr의 대응 부분은 무엇입니까 facet.query
?