ES6.0.0官方參考指南翻譯~指標聚合~Geo Centroid Aggregation

一種用於計算Geo-point數據類型字段中所有座標值的加權centroid(矩心或中心)的指標聚合。

示例:

PUT /museums

{

"mappings": {

"doc": {

"properties": {

"location": {

"type": "geo_point"

}

}

}

}

}

POST /museums/doc/_bulk?refresh

{"index":{"_id":1}}

{"location": "52.374081,4.912350", "city": "Amsterdam", "name": "NEMO Science Museum"}

{"index":{"_id":2}}

{"location": "52.369219,4.901618", "city": "Amsterdam", "name": "Museum Het Rembrandthuis"}

{"index":{"_id":3}}

{"location": "52.371667,4.914722", "city": "Amsterdam", "name": "Nederlands Scheepvaartmuseum"}

{"index":{"_id":4}}

{"location": "51.222900,4.405200", "city": "Antwerp", "name": "Letterenhuis"}

{"index":{"_id":5}}

{"location": "48.861111,2.336389", "city": "Paris", "name": "Musée du Louvre"}

{"index":{"_id":6}}

{"location": "48.860000,2.327000", "city": "Paris", "name": "Musée d'Orsay"}

POST /museums/_search?size=0

{

"aggs" : {

"centroid" : {

"geo_centroid" : {

"field" : "location" #1

}

}

}

}

1 用於指定參與centroid計算的字段,注意:該字段必須是Geo-point數據類型。

針對犯罪類型為盜竊(burglary)的所有文檔,上述聚合會計算盜竊比較嚴重的近似中心點位置。

其響應為:

{

...

"aggregations": {

"centroid": {

"location": {

"lat": 51.00982963107526,

"lon": 3.9662130922079086

},

"count": 6

}

}

}

當作為其它桶聚合的子聚合時,geo_centroid聚合會更有趣。

示例:

POST /museums/_search?size=0

{

"aggs" : {

"cities" : {

"terms" : { "field" : "city.keyword" },

"aggs" : {

"centroid" : {

"geo_centroid" : { "field" : "location" }

}

}

}

}

}


為了查找每個城市中博物館的中心位置,上述示例會將geo_centroid作為terms桶聚合的子聚合。

其響應為:

{

...

"aggregations": {

"cities": {

"sum_other_doc_count": 0,

"doc_count_error_upper_bound": 0,

"buckets": [

{

"key": "Amsterdam",

"doc_count": 3,

"centroid": {

"location": {

"lat": 52.371655656024814,

"lon": 4.909563297405839

},

"count": 3

}

},

{

"key": "Paris",

"doc_count": 2,

"centroid": {

"location": {

"lat": 48.86055548675358,

"lon": 2.3316944623366

},

"count": 2

}

},

{

"key": "Antwerp",

"doc_count": 1,

"centroid": {

"location": {

"lat": 51.22289997059852,

"lon": 4.40519998781383

},

"count": 1

}

}

]

}

}

}

全部指標聚合,請參考

單值指標聚合

多值指標聚合

地理位置相關聚合

可執行Map-Reduce計算的聚合


分享到:


相關文章: