Los índices 2dsphere admiten consultas geoespaciales en una esfera similar a la tierra. Por ejemplo, los índices 2dsphere pueden:
Determinar puntos dentro de un área específica.
Calcular la proximidad a un punto específico.
Devuelve coincidencias exactas en las consultas de coordenadas.
Los valores del campo indexado deben ser:
Para los legacy coordinate pairs, el índice 2dsphere convierte los datos en puntos GeoJSON.
Para crear un índice 2dsphere, especifique el string 2dsphere como el tipo de índice:
db.<collection>.createIndex( { <location field> : "2dsphere" } )
Nota
Al crear un índice 2dsphere, el primer valor, o longitud, debe estar entre -180 y 180, ambos inclusive. El segundo valor, o latitud, debe estar entre -90 y 90, ambos inclusive. Estas coordenadas se "envuelven" alrededor de la esfera. Por ejemplo, -179.9 y +179.9 son vecinos cercanos.
Casos de uso
Utilice los índices de 2dsphere para consultar y realizar cálculos sobre datos de ubicación donde aparecen los puntos de datos en la Tierra u otra superficie esférica. Por ejemplo:
Una aplicación de entrega de alimentos practica índices 2dsphere para fomentar búsquedas de restaurantes cercanos.
Una aplicación de planificación de rutas utiliza índices 2dsphere para calcular la distancia más corta entre paradas de descanso.
Un planificador urbano utiliza índices 2dsphere para encontrar parques que existen dentro de los límites de la ciudad.
Empezar
Para aprender a crear y consultar índices de 2dsphere, consulte:
Detalles
Los índices 2dsphere siempre son dispersos y tienen comportamientos especiales cuando se crean como parte de un índice compuesto.
sparse Propiedad
Los índices 2dsphere siempre son dispersos. Al crear un índice 2dsphere, MongoDB ignora la sparse opción.
Si un documento existente o recién insertado no contiene un campo de índice 2dsfera (o el campo es null o un arreglo vacío), MongoDB no agrega una entrada del documento al índice.
Índices compuestos de 2dsphere
Para un índice compuesto que incluya una clave de índice 2dsphere junto con claves de otros tipos, solo el campo de índice 2dsphere determina si el índice referencia un documento.
Un índice 2dsphere compuesto puede hacer referencia a múltiples campos de ubicación y no ubicación. Por el contrario, un índice 2d compuesto solo puede hacer referencia a un campo de ubicación y a otro campo.