zoukankan      html  css  js  c++  java
  • ElasticSearch聚合aggs入门

    Elasticsearch是一款功能强大的开源软件,不仅可以检索排序,还可以对文档进行更复杂的操作--聚合。

    1、单值聚合

      Sum求和,dsl参考如下:

    {
      "size": 0,
      "aggs": {
        "return_balance": {
          "sum": {
            "field": "balance"
          }
        }
      }
    }

    返回balance之和,其中size=0 表示不需要返回参与查询的文档。

    Min求最小值

    {
      "size": 0,
      "aggs": {
        "return_min_balance": {
          "min": {
            "field": "balance"
          }
        }
      }
    }

    返回结果

    Max求最大值

    {
      "size": 0,
      "aggs": {
        "return_max_balance": {
          "max": {
            "field": "balance"
          }
        }
      }
    }

    返回结果:

    AVG求平均值

    {
      "size": 0,
      "aggs": {
        "return_avg_balance": {
          "avg": {
            "field": "balance"
          }
        }
      }
    }

    返回结果:

    Cardinality 求基数(如下示例,查找性别的基数 M、F,共两个)

    {
      "size": 0,
      "aggs": {
        "return_cardinality": {
          "cardinality": {
            "field": "gender"
          }
        }
      }
    }

    结果为:

    2、多值聚合

    percentiles 求百分比

    查看官方文档时候,没看懂,下面是自己测试时的例子,按照性别(F,M)查看工资范围的百分比

    {
      "size": 0,
      "aggs": {
        "states": {
          "terms": {
            "field": "gender"
          },
          "aggs": {
            "banlances": {
              "percentile_ranks": {
                "field": "balance",
                "values": [
                  20000,
                  40000
                ]
              }
            }
          }
        }
      }

    结果:

    stats 统计

    查看balance的统计情况:

    {
      "size": 0,
      "aggs": {
        "balance_stats": {
          "stats": {
            "field": "balance"
          }
        }
      }
    }

    返回结果:

    extended_stats 扩展统计

    {
      "size": 0,
      "aggs": {
        "balance_stats": {
          "extended_stats": {
            "field": "balance"
          }
        }
      }
    }

    结果:

    更加复杂的查询,后续慢慢在实践中道来。

  • 相关阅读:
    Android Studio来了,是否准备抛弃Eclipse?
    Android Studio来了,是否准备抛弃Eclipse?
    文件名搜索神器Everything(201306更新)
    文件名搜索神器Everything(201306更新)
    可替代Windows任务管理器System Explorer
    log4j使用详解
    复平面和直角坐标系的思考
    芯片内电路和芯片外围电路
    复数的思考
    时不变的思考
  • 原文地址:https://www.cnblogs.com/pilihaotian/p/8823183.html
Copyright © 2011-2022 走看看