地理边界聚合

原文链接 : https://www.elastic.co/guide/en/elasticsearch/reference/5.3/search-aggregations-metrics-geobounds-aggregation.html

译文链接 : 地理边界聚合

贡献者 : @wangxiang,ApacheCNApache中文网

地理边界聚合是一个度量聚合,为一个字段计算包含所有地点值的边界框。

例如:

  1. {
  2. "query" : {
  3. "match" : { "business_type" : "shop" }
  4. },
  5. "aggs" : {
  6. "viewport" : {
  7. "geo_bounds" : {
  8. "field" : "location",
  9. "wrap_longitude" : true
  10. }
  11. }
  12. }
  13. }

1.地理边界聚合指定一个字段用来获得边界。

2.wrap_longitude是一个可选参数,指定边界框是否允许与国际日期变更线重叠,默认值是true。

上面的聚合实例表示查询所有业务类型为商店的文档,并且根据文档中的位置字段计算出边界框。

上面聚合语句的返回值为:

  1. {
  2. ...
  3. "aggregations": {
  4. "viewport": {
  5. "bounds": {
  6. "top_left": {
  7. "lat": 80.45,
  8. "lon": -160.22
  9. },
  10. "bottom_right": {
  11. "lat": 40.65,
  12. "lon": 42.57
  13. }
  14. }
  15. }
  16. }
  17. }