Skip to content

Latest commit

 

History

History
44 lines (23 loc) · 4.94 KB

README.md

File metadata and controls

44 lines (23 loc) · 4.94 KB

Índices 2d

Utilice un 2díndice para los datos almacenados como puntos en un plano bidimensional. El 2díndice está diseñado para pares de coordenadas heredados utilizados en MongoDB 2.2 y versiones anteriores.

Utilice un 2díndice si:

  • su base de datos tiene pares de coordenadas heredados heredados de MongoDB 2.2 o anterior, y
  • no tiene la intención de almacenar ningún dato de ubicación como objetos GeoJSON .

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

Consideraciones

A partir de MongoDB 4.0, puede especificar una keyopción en la $geoNearetapa de canalización para indicar la ruta del campo indexado que se utilizará. Esto permite que el $geoNearescenario se use en una colección que tiene múltiples 2díndices y / o múltiples índices de 2dsphere :

  • Si su colección tiene múltiples 2díndices y / o múltiples índices de 2dsphere , debe usar la keyopción para especificar la ruta del campo indexado a usar.
  • Si no especifica el key, no puede tener un 2díndice múltiple y / o un índice 2dsphere múltiple, ya que sin el key, la selección de índice entre varios 2díndices o 2dsphereíndices es ambigua.

NOTA

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

No utilice un 2díndice si sus datos de ubicación incluyen objetos GeoJSON. Para indexar tanto los pares de coordenadas heredados como los objetos GeoJSON , use un índice 2dsphere .

No puede utilizar un 2díndice como clave de fragmentación al fragmentar una colección. Sin embargo, puede crear un índice geoespacial en una colección fragmentada utilizando un campo diferente como clave de fragmentación.

Comportamiento

El 2díndice admite cálculos en un plano euclidiano plano . El 2díndice también admite cálculos de solo distancia en una esfera (p . Ej . $nearSphere), Pero para cálculos geométricos en una esfera (p $geoWithin. Ej. ), Almacene los datos como objetos GeoJSON y use un 2dsphereíndice.

Un 2díndice puede hacer referencia a dos campos. El primero debe ser el campo de ubicación. Un 2díndice compuesto crea consultas que seleccionan primero en el campo de ubicación y luego filtra esos resultados según los criterios adicionales. Un 2díndice compuesto puede cubrir consultas.

sparsePropiedad

2dlos índices son siempre escasos e ignoran la opción escasa . Si un documento carece de un 2dcampo de índice (o el campo es nulluna matriz vacía), MongoDB no agrega una entrada para el documento al 2díndice. Para inserciones, MongoDB inserta el documento pero no lo agrega al 2díndice.

Para un índice compuesto que incluye una 2dclave de índice junto con claves de otros tipos, solo el 2dcampo de índice determina si el índice hace referencia a un documento.

Opción de clasificación

2dlos índices solo admiten la comparación binaria simple y no admiten la opción de clasificación .

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