Geospatial Overview
FluentDynamoDB includes geospatial indexing support with three algorithms: Geohash, Google S2, and Uber H3.
Supported Algorithms
Geohash
- Uses BETWEEN queries
- Simple, efficient for rectangular regions
- Good for general-purpose location queries
Google S2
- Hierarchical cell structure
- Better for irregular shapes
- Lightweight implementation (core functions only)
Uber H3
- Hexagonal grid system
- Optimal for uniform coverage
- Lightweight implementation (core functions only)
Compatibility
Our S2 and H3 implementations provide core encoding/decoding functions. Codes are compatible with full-featured third-party libraries if you need advanced features like edge calculations or path functions.
Query Optimization
Geospatial queries work by converting a search area into cell IDs, querying DynamoDB for items in those cells, then filtering out false positives. See the Query Optimization page for strategies on choosing precision levels and structuring indexes.