其他分享
首页 > 其他分享> > 面试官问我会ES么,我说不会,抓紧学起【ES(一)聚合分析篇】

面试官问我会ES么,我说不会,抓紧学起【ES(一)聚合分析篇】

作者:互联网

ES聚合分析

1.metric(指标)聚合

1.1 单值分析

1.2 多值分析

2.bucket(桶)聚合

2.1 Bucket的分桶策略

2.2 Bucket + Metric

3.pipeline(管道)聚合

3.1 Parent结果内嵌到现有的聚合分析结果中

案例一:根据生日按月分组,求出每组的平均值,以及导数

{
    "size":0,
    "aggs":{
        "group_by_birth":{
            "date_histogram":{
                "field":"birth",
                "interval":"mounth",
                "format":"yyyy"
            },
            "aggs":{
                "avg_salary":{
                    "avg":{
                        "field":"salary"
                    }
                },
                "derivative_avg_salary":{
                    "derivative":{
                        "buckets_path":"avg_salary"
                    }
                }
            }
        }
    }
}

3.2 Sibing结果与现有聚合分析结果同级

案例一:根据job进行分组,求出每组的平均工资,找出这些组平均工资的最小值

{
    "size":0,
    "aggs":{
        "group_by_job":{
            "terms":{
                "field":"job",
                "size":10
            },
            "aggs":{
                "avg_salary":{
                    "avg":{
                        "field":"salary"
                    }
                }
            }
        },
        "min_salary_by_job":{
            "min_bucket":{
                "buckets_path":"group_by_job>avg_salary"
            }
        }
    }
}

4.ES中的Java API

4.1 terms,range,date_range等聚合的演示

标签:salary,面试官,聚合,price,field,elasticsearch,aggs,ES,size
来源: https://www.cnblogs.com/zaevn00001/p/15012436.html