比如說我有 city, source, company, user等字段, 然後需要根據 user 欄位來查出 各城市對應的 source, company欄位, 即同樣條件不同字段聚合, 如下
user city company
user city source
需要同時返回這兩種聚合結果, 要怎麼實現呢
"aggs":
},"source": }}
}},
"query": }]
}},
"size": 0 # size為0不會展示 hits, 只會展示聚合結果
}
聚合出來的結果是這個樣子的
,
"hits": ,
"aggregations": ,]},
"source": ,,,
]}}]
}}}
是不是很簡單方便啊, 語句結構也很簡單, 即
如果是往下聚合則繼續在 aggs的聚合下面繼續寫aggs
,
"aggs": }}
}}
如果是希望當前值保持跟上一層聚合, 則在當前aggs下繼續平行寫 聚合字段(aggs_field)
,
"aggs": ,
"aggs_field2": {},
"aggs_field3": {}}}
}}
ES聚合查詢例項
disable coord false adjust pure negative true boost 1 explain false,aggregations view code disable coord false adjust pure negative true boost 1 expla...
es聚合查詢提取網域名稱
1 因資料庫中資料量超過1000萬條,大於桶最大值聚合,通過kibana做如下設定後可做步驟3的聚合查詢 put cluster settings 2 通過kibana做如下查詢,檢視聚合後網域名稱數量 get hidden search 3 通過聚合查詢取出全部 聚合去重後網域名稱 寫入檔案 co...
es的bool,排序,聚合組合查詢
傳入的jsonobject sort 排序指定key aggs 聚合指定key sql的count 操作 列名6 獲取連線,clustername 集群名,hostname ip,port 埠號 9300 public transportclient init catch unknownhostex...