Los índices 2d admiten query sobre datos almacenados como puntos en un Plano bidimensional. El 2índice d está pensado para consultas sobre pares de coordenadas heredados.
Para crear un índice 2d, especifique la cadena 2d como el tipo de índice:
db.<collection>.createIndex( { <location field> : "2d" } )
No puedes usar índices en 2d para queries sobre objetos GeoJSON. Para habilitar consultas sobre objetos GeoJSON, utiliza índices 2dsphere.
Nota
Al crear un 2d índice, el primer valor (longitud) debe estar entre -180 y 180, inclusive. El segundo valor (latitud) debe estar entre -90 y 90, inclusive. Sin embargo, estos límites predeterminados pueden modificarse mediante las min y max opciones en los índices 2d. A diferencia de las coordenadas del 2índice dsphere, los valores de 2d indexes no "envuelven" alrededor de una esfera.
Casos de uso
Utiliza un índice 2D para query y realizar cálculos sobre datos representados dentro de un plano bidimensional. Por ejemplo:
Una aplicación que analiza similitudes visuales entre dos piezas de arte.
Una calculadora que puede realizar cálculos en grafos bidimensionales.
Un juego móvil que calcula distancias entre jugadores en un mapa bidimensional.
Empezar
Para aprender cómo crear y query índices 2d, consulta:
Detalles
Cálculos compatibles
Los índices 2D admiten cálculos en un plano euclidiano.
Para cálculos de geometría esférica, almacene sus datos como objetos GeoJSON y use un índice 2dsphere para soportar consultas geoespaciales.
Índices compuestos 2d
Puedes crear índices compuestos en 2D que hagan referencia a dos campos:
El primer campo debe ser el campo de ubicación. El índice crea consultas que primero seleccionan este campo.
El segundo campo filtra aún más los resultados según criterios adicionales.
Un índice compuesto 2d puede cubrir consultas.
sparse Propiedad
Los índices 2D siempre son dispersos e ignoran la opción de dispersión. Si un documento carece de un campo de índice 2D (o si el campo es null o un array vacío), MongoDB no añade una entrada para el documento al índice 2D. En las inserciones, MongoDB inserta el documento, pero no lo añade al índice 2D.
Para un índice compuesto que incluye una clave de índice 2d junto con claves de otros tipos, solo el campo de índice 2d determina si el índice hace referencia a un documento.