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计算的聚合


分享到:


相關文章: