Skip to content

[ML] adds geo_centroid aggregation support to data frames#42088

Merged
benwtrent merged 1 commit intoelastic:masterfrom
benwtrent:feature/ml-df-add-centroid-support
May 10, 2019
Merged

[ML] adds geo_centroid aggregation support to data frames#42088
benwtrent merged 1 commit intoelastic:masterfrom
benwtrent:feature/ml-df-add-centroid-support

Conversation

@benwtrent
Copy link
Copy Markdown
Member

This adds support for the geo_centroid aggregation. The mapped type that supports geo_centroid is always geo_point. So, I opted to make that the static destination mapped type as well. ES supports geo_point _sources being index in the form of lat, lon so calling .toString on the aggregation results is good enough to build the document source.

This opens up some interesting use cases to show the centroid for specific entities when the data is pivoted. An example using kibana_sample_data_logs

PUT _data_frame/transforms/geo_test
{
  "source": {
    "index": "kibana_sample_data_logs"
  }
  ,"dest": {"index": "geo_test"}
  , "pivot": {
    "group_by": {
      "clientip": {"terms": {"field": "clientip"}}
    },
    "aggregations": {
      "location": {
        "geo_centroid": {
          "field":"geo.coordinates"
        }
      }
    }
  }
}

@elasticmachine
Copy link
Copy Markdown
Collaborator

Pinging @elastic/ml-core

Copy link
Copy Markdown

@droberts195 droberts195 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@benwtrent benwtrent merged commit ac34af5 into elastic:master May 10, 2019
@benwtrent benwtrent deleted the feature/ml-df-add-centroid-support branch May 10, 2019 20:51
benwtrent added a commit to benwtrent/elasticsearch that referenced this pull request May 10, 2019
jasontedor added a commit to jasontedor/elasticsearch that referenced this pull request May 10, 2019
* elastic/master: (84 commits)
  [ML] adds geo_centroid aggregation support to data frames (elastic#42088)
  Add documentation for calendar/fixed intervals (elastic#41919)
  Remove global checkpoint assertion in peer recovery (elastic#41987)
  Don't create tempdir for cli scripts (elastic#41913)
  Fix debian-8 update (elastic#42056)
  Cleanup plugin bin directories (elastic#41907)
  Prevent order being lost for _nodes API filters (elastic#42045)
  Change IndexAnalyzers default analyzer access (elastic#42011)
  Remove reference to fs.data.spins in docs
  Mute failing AsyncTwoPhaseIndexerTests
  Remove close method in PageCacheRecycler/Recycler (elastic#41917)
  [ML] adding pivot.max_search_page_size option for setting paging size (elastic#41920)
  Docs: Tweak list formatting
  Simplify handling of keyword field normalizers (elastic#42002)
  [ML] properly nesting objects in document source (elastic#41901)
  Remove extra `ms` from log message (elastic#42068)
  Increase the sample space for random inner hits name generator (elastic#42057)
  Recognise direct buffers in heap size docs (elastic#42070)
  shouldRollGeneration should execute under read lock (elastic#41696)
  Wait for active shard after close in mixed cluster (elastic#42029)
  ...
gurkankaymak pushed a commit to gurkankaymak/elasticsearch that referenced this pull request May 27, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants