5.2.13. Global Aggregation

未匹配的标注

全局聚合

定义了所有搜索上下文中的文档的单个桶, 该上下文是由您搜索的索引和文档类型定义的,但不受搜索查询本身的影响。

注意
全局聚合器只能作为顶级聚合器放置,因为在另一个桶聚合器中嵌入全局聚合器没有意义。

以下是示例:

POST /sales/_search?size=0
{
    "query" : {
        "match" : { "type" : "t-shirt" }
    },
    "aggs" : {
        "all_products" : {
            "global" : {}, 
            "aggs" : { 
                "avg_price" : { "avg" : { "field" : "price" } }
            }
        },
        "t_shirts": { "avg" : { "field" : "price" } }
    }
}
  1. global 聚合具有空的内容体

  2. 为该 global聚合注册的子聚合

上述聚合演示了如何在搜索上下文中的所有文档上计算聚合(本例中为 avg_price),而不考虑查询(在我们的例子中,它将计算目录中所有产品的平均价格,而不仅仅是「shirts」)。

上述聚合的响应:

{
    ...
    "aggregations" : {
        "all_products" : {
            "doc_count" : 7,① 
            "avg_price" : {
                "value" : 140.71428571428572 ②
            }
        },
        "t_shirts": {
            "value" : 128.33333333333334 ③
        }
    }
}
  1. 被聚合的文档数(在我们的例子中,是搜索上下文中的所有文档)

  2. 索引中所有产品的平均价格

  3. 所有 t-shirts 的平均价格

本文章首发在 LearnKu.com 网站上。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://learnku.com/docs/elasticsearch73...

译文地址:https://learnku.com/docs/elasticsearch73...

上一篇 下一篇
CrazyZard
贡献者:3
讨论数量: 0
发起讨论 只看当前版本


暂无话题~