Получите верхнюю агрегацию вasticsearch - PullRequest
0 голосов
/ 26 ноября 2018

Я пытаюсь найти количество различных параметров пути с помощью запросаasticsearch

{
    "size":0,
    "aggs" : {
        "genres" : {
            "terms" : {
              "field" : "path.keyword"
            }
        }
}

Однако он не возвращает путь с наибольшим числом.Возвращает несколько случайных 10 путей с подсчетами.Чтобы получить пути с самыми высокими частотами, я изменил его на

{
    "size":0,
    "aggs" : {
        "genres" : {
            "terms" : {
              "field" : "path.keyword"
            }
        },
        "aggs": {
            "top_hits" : {
              "size":11
            }
        }
    }
}

Но он не меняет предыдущий ответ, а добавляет несколько новых документов в ответ.Я не могу найти способ получить самые высокие частоты.Пожалуйста, предложите какой-нибудь способ.

1 Ответ

0 голосов
/ 26 ноября 2018

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

GET _search
{
  "size": 0, 
  "aggs": {
    "genres": {
      "terms": {
        "field": "path.keyword",
        "size": 100,
        "order" : { "_count" : "asc" }
      }
    }
  }
}
...