Elasticsearch支持许多数据聚合和分析函数,以下是其中一些重要的函数:
GET /myindex/_search
{
"size": 0,
"aggs": {
"avg_score": {
"avg": {
"field": "score"
}
}
}
}
GET /myindex/_search
{
"size": 0,
"aggs": {
"group_by_field": {
"terms": {
"field": "field_name"
}
}
}
}
GET /myindex/_search
{
"size": 0,
"aggs": {
"date_histogram_agg": {
"date_histogram": {
"field": "date_field",
"interval": "day"
}
}
}
}
GET /myindex/_search
{
"size": 0,
"aggs": {
"date_agg": {
"date_histogram": {
"field": "date_field",
"interval": "week"
},
"aggs": {
"country_agg": {
"terms": {
"field": "country"
},
"aggs": {
"avg_score": {
"avg": {
"field": "score"
}
}
}
}
}
}
}
}
除了上述函数外,Elasticsearch还提供了很多其他的聚合和分析函数,如stats、percentiles、top_hits等,开发者可以根据具体需求自行选择使用。