Geospatial data structures in Elasticsearch and Apache Lucene have been evolving and improving at a rapid pace. Learn how Elastic has simplified the geospatial indexing, search, and analytics use case by advancing the state of geo in Apache Lucene and Elasticsearch. From new spatial indexing strategies and performance improvements in Lucene to changes in geospatial field mappings in Elasticsearch, take a journey through the world of spatial and multi-dimensional indexing and search in the Elastic Stack.
18. 18
geo_shape indexing
pre 6.6 - terms/postings encoding
• Max tree_levels == 32 (2 bits / cell)
• distance_error_pct
• “slop” factor to manage transient
memory usage
• % of the diagonal distance
(degrees) of the shape
• Default == 0 if precision set (2.0)
• points_only
• optimization for points only shape
index
• short-circuits recursion
19. 19
geo_shape indexing
6.6+ - “triangle” encoding (Bkd-tree)
• LatLonShape - new Lucene Field Type (Lucene 7.6)
‒ Lat/Lon geometry represented using Triangular Irregular Network (TIN)
Quad Tree decomposition
1,105,889 quad terms at
3 meter spatial resolution
TIN decomposition
8 triangle terms at
~1.11 centimeter spatial resolution
20. 20
geo_shape indexing
6.6+ - “triangle” encoding (Bkd-tree)
• LatLonShape - new Lucene Field Type (Lucene 7.6)
‒ Lat/Lon geometry represented using Triangular Irregular Network (TIN)