Поиск…


Синтаксис

  • «aggregations»: {- "<aggregation_name>": {- "<aggregation_type>": {- <aggregation_body> -} - [, "meta": {[<meta_data_body>]}]? - [, "aggregations": {[<sub_aggregation>] +}]? -} - [, "<aggregation_name_2>": {...}] * -}

Среднее агрегирование

Это агрегирование агрегатов с одним значением, которое вычисляет среднее число числовых значений, которые извлекаются из агрегированных документов.

POST /index/_search?
{
    "aggs" : {
        "avd_value" : { "avg" : { "field" : "name_of_field" } }
    }
}

Вышеуказанное агрегирование вычисляет средний класс по всем документам. Тип агрегации - avg, а параметр поля определяет числовое поле документов, на которое рассчитывается среднее значение. Вышеупомянутое вернет следующее:

{
    ...
    "aggregations": {
        "avg_value": {
            "value": 75.0
        }
    }
}

Имя агрегации (avg_grade выше) также служит ключом, по которому результат агрегирования может быть получен из возвращаемого ответа.

Агрегация мощности

Единичная агрегация показателей, которая вычисляет приблизительное количество различных значений. Значения могут быть извлечены либо из определенных полей документа, либо сгенерированы скриптом.

POST /index/_search?size=0
{
    "aggs" : {
        "type_count" : {
            "cardinality" : {
                "field" : "type"
            }
        }
    }
}

Отклик:

{
    ...
    "aggregations" : {
        "type_count" : {
            "value" : 3
        }
    }
}

Расширенная статистика агрегирования

Агрегирование многозначных показателей, которое вычисляет статистику по числовым значениям, извлеченным из агрегированных документов. Эти значения могут быть извлечены либо из определенных числовых полей в документах, либо сгенерированы предоставленным сценарием.

Агрегаты extended_stats - это расширенная версия агрегации статистики, в которую добавляются дополнительные метрики, такие как sum_of_squares, variance, std_deviation и std_deviation_bounds.

{
    "aggs" : {
        "stats_values" : { "extended_stats" : { "field" : "field_name" } }
    }
}

Пример вывода:

{
    ...

    "aggregations": {
        "stats_values": {
           "count": 9,
           "min": 72,
           "max": 99,
           "avg": 86,
           "sum": 774,
           "sum_of_squares": 67028,
           "variance": 51.55555555555556,
           "std_deviation": 7.180219742846005,
           "std_deviation_bounds": {
            "upper": 100.36043948569201,
            "lower": 71.63956051430799
           }
        }
    }
}


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow