Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
Docs Menu
Docs Home
/
Manual de MongoDB
/

2d Indexes

Utiliza un índice 2d para datos almacenados como puntos en un plano bidimensional. El índice 2d está destinado a legacy coordinate pairs usados en MongoDB 2.2 y anteriores.

Utiliza un índice 2d si:

  • tu base de datos tiene pares de coordenadas antiguos de MongoDB 2.2 o anterior, y

  • no tienes la intención de almacenar ningún dato de ubicación como objetos GeoJSON.

Para obtener más información sobre consultas geoespaciales, consulta Consultas geoespaciales.

Puedes especificar una opción de key en la $geoNear etapa del pipeline para indicar la ruta del campo indexado a utilizar. Esto permite que la etapa $geoNear sea utilizada en una colección que tiene múltiples índices 2d y/o múltiples 2d índice de esfera:

  • Si tu colección tiene múltiples 2d índices y/o múltiples índices 2dsphere, debes usar la opción key para especificar la ruta de campo indexado que se utilizará.

  • Si no especificas el key, no puedes tener múltiples índices 2d y/o múltiples índices 2dsphere ya que sin el key, la selección del índice entre múltiples 2d índices o 2dsphere índices es ambigua.

Nota

Si no especificas el elemento key, y tienes como máximo solo un índice de elemento 2d y/o solo un índice de elemento 2d, MongoDB primero busca un índice 2d para usar. Si un índice 2d no existe, MongoDB busca un índice 2dsphere para usar.

No use un índice 2d si sus datos de ubicación incluyen objetos GeoJSON. Para indexar en ambos pares de coordenadas heredadas y objetos GeoJSON, utiliza un índice 2dsphere.

No puedes utilizar un índice 2d como una clave de partición al fragmentar una colección. Sin embargo, puedes crear un índice geoespacial en una colección particionada utilizando un campo diferente como la clave de partición.

El índice 2d admite cálculos en un plano euclidiano plano. El índice 2d también soporta cálculos solamente de distancia en una esfera (es decir, $nearSphere), pero para cálculos geométricos en la esfera (por ejemplo, " $geoWithin), almacenar los datos como objetos GeoJSON y usar un índice 2dsphere.

Un índice 2d puede hacer referencia a dos campos. La primera debe ser el campo de ubicación. Un índice compuesto 2d construye consultas que seleccionan primero en el campo de ubicación y luego filtran esos resultados por los criterios adicionales. Un índice compuesto 2d puede cubrir consultas.

2d los índices siempre son dispersos e ignoran la opción dispersa. Si a un documento le falta un campo de índice 2d (o el campo es null o es un arreglo vacío), MongoDB no agrega una entrada para el documento en el índice 2d. Para las inserciones, MongoDB inserta el documento pero no lo agrega al índice 2d.

Para un índice compuesto que incluye un índice clave 2d junto con índices de otros tipos, sólo el campo índice 2d determina si el índice hace referencia a un documento.

2d los índices sólo admiten comparaciones binarias simples y no admiten la opción de intercalación.

Para crear un índice 2d en una colección que tenga una intercalación no simple, debes especificar explícitamente {collation: {locale: "simple"} } al crear el índice.

Volver

query um índice 2dsphere

En esta página