ElasticSearch 學習記錄之ES幾種常見的聚合操作


ElasticSearch 系列文章

1 ES 入門之一 安裝ElasticSearcha

2 ES 記錄之如何創建一個索引映射

3 ElasticSearch 學習記錄之Text keyword 兩種基本類型區別

4 ES 入門記錄之 match和term查詢的區別

5 ElasticSearch 學習記錄之ES幾種常見的聚合操作

6 ElasticSearch 學習記錄之父子結構的查詢

7 ElasticSearch 學習記錄之ES查詢添加排序字段和使用missing或existing字段查詢

8 ElasticSearch 學習記錄之ES高亮搜索

9 ElasticSearch 學習記錄之ES短語匹配基本用法

10 ElasticSearch 學習記錄之 分布式文檔存儲往ES中存數據和取數據的原理

11 ElasticSearch 學習記錄之集群分片內部原理

12 ElasticSearch 學習記錄之ES如何操作Lucene段

13 ElasticSearch 學習記錄之如任何設計可擴容的索引結構

14 ElasticSearch之 控制相關度原理講解







ES幾種常見的聚合操作

普通聚合

POST /product/_search
{
  "size": 0, 
  "aggs": {
    "agg_city": {
      "terms": {
        "field": "departureCitys" //字段
      }
    }
  }
}

父子結構的索引的聚合

POST product/_search
{
  "size": 0, 
  "aggs": {
    "months": {
      "children": {
        "type": "price"//子類型
      },
      "aggs": {
        "month": {
          "terms": {
            "field": "months"
          }
        }
      }
    }
  }
}

雙層嵌套結構索引的聚合查詢

POST /product/_search
{
  "size": 0, 
  "aggs": {
    "theme": {
      "nested": {
        "path": "themes"//嵌套對象
      },
      "aggs": {
        "agg_category": {
          "terms": {
            "field": "themes.category"//聚合對象
          },
          "aggs": {
            "agg_name": {
              "nested": {
                "path": "themes.items"//嵌套對象的嵌套對象
              },
              "aggs": {
                "agg_name": {
                  "terms": {
                    "field": "themes.items.name",//聚合的對象的路徑
                    "size": 10
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}

嵌套結構索引的聚合查詢

POST /product/_search
{
  "size": 0, 
  "aggs": {
    "theme": {
      "nested": {
        "path": "themes"//嵌套對象
      },
      "aggs": {
        "agg_category": {
          "terms": {
            "field": "themes.category"//聚合對象
          } 
        }
      }
    }
  }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM