E
E
Elasticsearch 高手之路
Search…
E
E
Elasticsearch 高手之路
Introduction
First Chapter
1.ElasticSearch 5.x 安装
2.基础学前班
3.基础
3.1.配置文件
3.2.Mapping
3.3. Analysis(分析)
3.4. APIs
3.5.Query DSL(DSL方式查询)
3.6.Aggregations(聚合分析)
3.6.1.量度聚合(Metric Aggregations)
平均值聚合(Avg Aggregation)
基数聚合(Cardinality Aggregation)
扩展统计聚合( Extended Stats Aggregation)
地理边界聚合(Geo Bounds Aggregation)
地理重心聚合(Geo Centroid Aggregation)
最大值聚合(Max Aggregation)
最小值聚合(Min Aggregation)
Percentiles Aggregation
Percentile Ranks Aggregation
Scripted Metric Aggregation
Stats Aggregation
总和聚合(Sum Aggregation)
Top hits Aggregation
Value Count Aggregation
3.6.2.桶聚合(Bucket Aggregations)
3.6.3.管道聚合(Pipeline Aggregations)
3.6.4.矩阵聚合(Matrix Aggregations)
3.6.5.缓存频繁聚合(Caching heavy aggregations)
3.6.6.仅返回需要聚合的结果(Returning only aggregation results)
3.6.7.聚合元数据(Aggregation Metadata)
3.6.8.返回聚合的类型(Returning the type of the aggregation)
Glossary of terms (词汇表)
未完成的任务
4.基础补充总结
原理
实战
PHP API
资料
笔记
Powered By
GitBook
平均值聚合(Avg Aggregation)
single-value计量聚合操作就是从聚合文本中提取的数据进行求平均数的操作。这些值可以是从文本具体的数值属性中提取的值,也可以是使用脚本生成的。
假设这个数据都是有学生的考试成绩(0-100)的文档组成:
{
"aggs" : {
"avg_grade" : { "avg" : { "field" : "grade" } }
}
}
上面的聚合操作就是计算所有文档的平均值。这个聚合操作的类型是avg,并且使用field来定义要计算文档中的属性。如下所示:
{
...
"aggregations": {
"avg_grade": {
"value": 75
}
}
}
聚合操作的名可以也可以作为聚合操作返回的关键字(例如上面的avg)。
Script
使用脚本计算平均值:
{
...,
"aggs" : {
"avg_grade" : {
"avg" : {
"script" : {
"inline" : "doc['grade'].value",
"lang" : "painless"
}
}
}
}
}
将会解释script参数作为无并发脚本语言和无脚本参数的内联脚本。一个文件脚本中包含如下参数和语法规范:
{
...,
"aggs" : {
"avg_grade" : {
"avg" : {
"script" : {
"file": "my_script",
"params": {
"field": "grade"
}
}
}
}
}
}
在索引脚本文件中可以使用id参数取代file参数。
Value Scripts
事实证明考试是高于学生的水平的需要对学生的成绩进行校对。我们可以使用下面的脚本获取新的平均数:
{
"aggs" : {
...
"aggs" : {
"avg_corrected_grade" : {
"avg" : {
"field" : "grade",
"script" : {
"lang": "painless",
"inline": "_value * params.correction",
"params" : {
"correction" : 1.2
}
}
}
}
}
}
}
Missing Value
这个missing参数就是定义文档怎样处理缺省的文档。默认情况下,它们会被忽略,也可以视它们为具体指。
{
"aggs" : {
"grade_avg" : {
"avg" : {
"field" : "grade",
"missing": 10
}
}
}
}
在文档中,如果grade这个属性没有的值话,就会默认为10.
Previous
3.6.1.量度聚合(Metric Aggregations)
Next
基数聚合(Cardinality Aggregation)
Last modified
3yr ago
Copy link
Outline
Script
Value Scripts
Missing Value