@Fly3110
web developer

Как в elasticsearch получить кол-во документов, исключенных фильтром?

Всем привет.

Делаю выборку с тремя вложенными агрегациями: по типу приложения, по дате, по его версии..
Причем детальные данные нужны только по наиболее используемым версиям (они известны заранее)

Выборка такого вида:

{
  "size": 0,
  "query": {
    "bool": {
      "should": [
        {
          "bool": {
            "must": [
              {
                "term": {
                  "app_type": "client"
                }
              },
              {
                "terms": {
                  "app_version": [
                    "32.1",
                    "32.2",
                    "32.3"
                  ]
                }
              }
            ]
          }
        },
        {
          "bool": {
            "must": [
              {
                "term": {
                  "app_type": "server"
                }
              },
              {
                "terms": {
                  "app_version": [
                    "1",
                    "2",
                    "3"
                  ]
                }
              }
            ]
          }
        }
      ]
    }
  },
  "aggs": {
    "apps": {
      "aggs": {
        "days": {
          "aggs": {
            "app_versions": {
              "terms": {
                "field": "app_version"
              }
            }
          },
          "terms": {
            "field": "day",
            "order": {
              "_key": "desc"
            }
          }
        }
      },
      "terms": {
        "field": "app_type"
      }
    }
  }
}


Вопрос в том, как получить кол-во документов для версий, которые были исключены фильтром. Это поле "sum_other_doc_count", как я понимаю.

Спасибо
  • Вопрос задан
  • 51 просмотр
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы