暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

ElasticSearch 管道聚合

北漂码农有话说 2021-08-08
695

今天和大家分享一个 Es 中的简单话题--管道聚合。

以下是视频笔记:

注意,笔记只是视频内容的一个简要记录,因此笔记内容比较简单,完整的内容可以查看视频。

24.ElasticSearch 管道聚合

管道聚合相当于在之前聚合的基础上,再次聚合。

24.1 Avg Bucket Aggregation

计算聚合平均值。例如,统计每个出版社所出版图书的平均值,然后再统计所有出版社的平均值:

GET books/_search
{
  "aggs": {
    "book_count": {
      "terms": {
        "field""publish",
        "size": 3
      },
      "aggs": {
        "book_avg": {
          "avg": {
            "field""price"
          }
        }
      }
    },
    "avg_book":{
      "avg_bucket": {
        "buckets_path""book_count>book_avg"
      }
    }
  }
}

24.2 Max Bucket Aggregation

统计每个出版社所出版图书的平均值,然后再统计平均值中的最大值:

GET books/_search
{
  "aggs": {
    "book_count": {
      "terms": {
        "field""publish",
        "size": 3
      },
      "aggs": {
        "book_avg": {
          "avg": {
            "field""price"
          }
        }
      }
    },
    "avg_book":{
      "max_bucket": {
        "buckets_path""book_count>book_avg"
      }
    }
  }
}

24.3 Min Bucket Aggregation

统计每个出版社所出版图书的平均值,然后再统计平均值中的最小值:

GET books/_search
{
  "aggs": {
    "book_count": {
      "terms": {
        "field""publish",
        "size": 3
      },
      "aggs": {
        "book_avg": {
          "avg": {
            "field""price"
          }
        }
      }
    },
    "avg_book":{
      "min_bucket": {
        "buckets_path""book_count>book_avg"
      }
    }
  }
}

24.4 Sum Bucket Aggregation

统计每个出版社所出版图书的平均值,然后再统计平均值之和:

GET books/_search
{
  "aggs": {
    "book_count": {
      "terms": {
        "field""publish",
        "size": 3
      },
      "aggs": {
        "book_avg": {
          "avg": {
            "field""price"
          }
        }
      }
    },
    "avg_book":{
      "sum_bucket": {
        "buckets_path""book_count>book_avg"
      }
    }
  }
}

24.5 Stats Bucket Aggregation

统计每个出版社所出版图书的平均值,然后再统计平均值的各种数据:

GET books/_search
{
  "aggs": {
    "book_count": {
      "terms": {
        "field""publish",
        "size": 3
      },
      "aggs": {
        "book_avg": {
          "avg": {
            "field""price"
          }
        }
      }
    },
    "avg_book":{
      "stats_bucket": {
        "buckets_path""book_count>book_avg"
      }
    }
  }
}

24.6 Extended Stats Bucket Aggregation

GET books/_search
{
  "aggs": {
    "book_count": {
      "terms": {
        "field""publish",
        "size": 3
      },
      "aggs": {
        "book_avg": {
          "avg": {
            "field""price"
          }
        }
      }
    },
    "avg_book":{
      "extended_stats_bucket": {
        "buckets_path""book_count>book_avg"
      }
    }
  }
}

24.7 Percentiles Bucket Aggregation

GET books/_search
{
  "aggs": {
    "book_count": {
      "terms": {
        "field""publish",
        "size": 3
      },
      "aggs": {
        "book_avg": {
          "avg": {
            "field""price"
          }
        }
      }
    },
    "avg_book":{
      "percentiles_bucket": {
        "buckets_path""book_count>book_avg"
      }
    }
  }
}

文章转载自北漂码农有话说,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论