What geospatial forbids
- You cannot partition extended objects disjointly without duplicating them.
- You cannot linearize two dimensions without tearing neighbourhoods.
- You cannot project a sphere onto a plane preserving area, angle and distance together.
- You cannot decide degenerate predicates reliably in floating point.
- You cannot estimate spatial query cost from cardinality alone, because the filter's selectivity depends on the shapes.
The escapes and their prices
| Escape | Price |
|---|---|
| Bounding boxes give near-free rejection | false positives proportional to shape irregularity |
| Duplication across cells gives disjoint partitions and clean pruning | index growth and read-side deduplication |
| Overlapping regions give single storage | multi-path search, which degrades toward a scan under heavy overlap |
| Grid cell ids give the whole existing relational toolchain | tear artefacts, a resolution knob, coarser answers |
| Exact arithmetic gives robust predicates | cost, so it is used only for degenerate cases |
| Adaptive partitioning gives balance | being fitted to a distribution that will move |