queries index geowithin 2dsphere indexing geospatial

indexing - index - mongodb polygon



¿Cómo funciona un índice geoespacial? (2)

De acuerdo con esta otra pregunta SO :

La implementación actual codifica los códigos hash geográficos encima de los B-trees MongoDB estándar. Los resultados de $ near consultas son exactos. Una limitación de esta codificación, aunque rápida, es que las búsquedas de prefijos no dan resultados exactos, especialmente alrededor de las áreas de cambio de bits. MongoDB resuelve esto haciendo una búsqueda de vecinos de la cuadrícula después del escaneo de prefijos inicial para recoger cualquier punto rezagado. En general, esto garantiza que el rendimiento permanezca muy alto al tiempo que proporciona resultados correctos.

Me pregunto cómo funciona un índice geoespacial, como el que usa MongoDB. ¿Alguien puede explicar qué estructura de datos / algoritmo se usa internamente? ¿A qué complejidad de tiempo se ejecuta una búsqueda?

Los enlaces a los recursos también serían geniales.