Elasticsearch
samenvoegingen
Zoeken…
Syntaxis
- "aggregations": {- "<aggregation_name>": {- "<aggregation_type>": {- <aggregation_body> -} - [, "meta": {[<meta_data_body>]}]? - [, "aggregations": {[<sub_aggregation>] +}]? -} - [, "<aggregation_name_2>": {...}] * -}
Gem. Aggregatie
Dit is een statistische aggregatie met een enkele waarde die het gemiddelde berekent van de numerieke waarden die worden geëxtraheerd uit de geaggregeerde documenten.
POST /index/_search?
{
"aggs" : {
"avd_value" : { "avg" : { "field" : "name_of_field" } }
}
}
De bovenstaande aggregatie berekent het gemiddelde cijfer voor alle documenten. Het aggregatietype is gemiddeld en de veldinstelling definieert het numerieke veld van de documenten waarop het gemiddelde zal worden berekend. Het bovenstaande retourneert het volgende:
{
...
"aggregations": {
"avg_value": {
"value": 75.0
}
}
}
De naam van de aggregatie (avg_grade hierboven) dient ook als de sleutel waarmee het aggregatieresultaat kan worden opgehaald uit het geretourneerde antwoord.
Kardinaliteitsaggregatie
Een statistische aggregatie met één waarde die een geschat aantal afzonderlijke waarden berekent. Waarden kunnen worden geëxtraheerd uit specifieke velden in het document of worden gegenereerd door een script.
POST /index/_search?size=0
{
"aggs" : {
"type_count" : {
"cardinality" : {
"field" : "type"
}
}
}
}
Reactie:
{
...
"aggregations" : {
"type_count" : {
"value" : 3
}
}
}
Uitgebreide statistieken aggregatie
Een aggregatie met meerdere waarden die statistieken berekent over numerieke waarden die zijn geëxtraheerd uit de geaggregeerde documenten. Deze waarden kunnen worden geëxtraheerd uit specifieke numerieke velden in de documenten of worden gegenereerd door een verstrekt script.
De uitgebreide_statistieken-aggregaties is een uitgebreide versie van de statistiekenaggregatie, waaraan extra statistieken zijn toegevoegd zoals sum_of_squares, variantie, std_deviation en std_deviation_bounds.
{
"aggs" : {
"stats_values" : { "extended_stats" : { "field" : "field_name" } }
}
}
Voorbeeld output:
{
...
"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
}
}
}
}