Definición
Novedades en la versión 6.0.7.
Devuelve información sobre los índices de Atlas Search o los índices de Atlas Vector Search existentes en una colección específica.
Importante
Método mongosh
Esta página documenta un método mongosh. Esta no es la documentación para un driver específico de lenguaje, como Node.js.
Para los drivers de API de MongoDB, consulte la documentación del driver de MongoDB específica del lenguaje.
Compatibilidad
Este método está disponible en implementaciones alojadas en los siguientes entornos:
MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube
Sintaxis
Sintaxis del comando:
db.<collection>.getSearchIndexes(<indexName>)
Campos de comandos
getSearchIndexes() toma este campo:
Campo | Tipo | Necesidad | Descripción |
|---|---|---|---|
| string | Opcional | Nombre del índice sobre el que se devolverá información. Si se omite el campo |
Control de acceso
Si tu implementación aplica control de acceso, el usuario que ejecute getSearchIndexes() debe tener el listSearchIndexes acción privilegiada sobre la base de datos o colección:
{ resource: { db : <database>, collection: <collection> }, actions: [ "listSearchIndexes" ] }
El rol integrado proporciona read el listSearchIndexes privilegio. El siguiente ejemplo otorga el read rol en la qa base de datos:
db.grantRolesToUser( "<user>", [ { role: "read", db: "qa" } ] )
Salida
getSearchIndexes() Devuelve una matriz de documentos. Cada documento de la matriz contiene los siguientes campos:
Campo | Tipo | Descripción |
|---|---|---|
| string | Identificador único para el índice. |
| string | Nombre del índice. |
| string | Estado del índice. Para obtener más información, consulta Estados del índice de búsqueda de Atlas. |
| booleano | Indica si el índice está listo para ser consultado. |
| Documento | Describe la versión del índice. |
| entero | Número de versión asociado con la definición del índice. Cuando se actualiza una definición de índice, el número de versión se incrementa automáticamente. |
| fecha | Hora cuando se creó la definición actual del índice. |
| Documento | La definición más reciente del índice. Para más información, consulte Sintaxis de definición de índice de búsqueda. |
| arreglo de documentos | Contiene el estado del índice en cada host de búsqueda ( |
| string | Nombre de host del correspondiente |
| string | Estado del índice en el correspondiente |
| booleano | Indica si el índice está listo para ser consultado en el |
| Documento | Contiene información de estado sobre el índice activo en el correspondiente Para obtener más detalles, consulta Detalles del estado del índice. |
| Documento | Contiene información de estado sobre un índice que se está construyendo en segundo plano en el Para obtener más detalles, consulta Detalles del estado del índice. |
| string | Estado de los mapeos de sinónimos del índice. Este campo solo aparece si el índice tiene sinónimos definidos. Puede ser uno de los siguientes valores:
El estado devuelto es un resumen de los mapeos de sinónimos en cada |
| arreglo de documentos | Contiene el estado de los mapeos de sinónimos del índice en cada host de búsqueda ( |
| string | Estado de la asignación de sinónimos correspondiente en todos los procesos |
| booleano | Indica si la asignación de sinónimos correspondiente puede admitir query en todos los procesos |
| string | Describe un error para el mapeo de sinónimos, si corresponde. Solo aparece si el |
Detalles del estado del índice
La siguiente tabla describe los campos incrustados de los siguientes documentos: - statusDetail.[mongot].mainIndex - statusDetail.[mongot].stagedIndex
Los campos describen el estado del índice en un mongot específico.
Campo | Tipo | Descripción |
|---|---|---|
| string | El estado de la generación del índice en el |
| booleano | Indica si la generación del índice está lista para ser consultada en el |
| string | El estado de los mapeos de sinónimos de la generación de índices en el |
| Documento | Contiene el estado de los mapeos de sinónimos del índice en el correspondiente Para obtener más información, consulte Detalles de asignación de sinónimos. |
| Documento | Describe la versión de definición del índice con la que se está compilando esta generación de índices. |
| entero | Número de versión que la generación del índice está utilizando en el correspondiente |
| fecha | Hora en que se creó la definición del índice. |
| Documento | La definición con la que se está construyendo este índice. |
Detalles del mapeo de sinónimos
La siguiente tabla describe los campos embebidos de los siguientes objetos:
statusDetail.mainIndex.synonymMappingStatusDetails.<synonymMapping>statusDetail.stagedIndex.synonymMappingStatusDetails<synonymMapping>
Campo | Tipo | Descripción |
|---|---|---|
| string | Estado para la mapeo de sinónimos en el proceso correspondiente |
| booleano | Indica si la asignación de sinónimos puede admitir consultas en el proceso |
| string | Describe un error para el mapeo de sinónimos, si corresponde. Solo aparece si el |
Estados del índice de búsqueda de Atlas
El campo status en la salida de getSearchIndexes() puede ser uno de los siguientes:
Estado | Descripción |
|---|---|
| Los siguientes escenarios pueden provocar que un índice esté en el estado
Cuando el índice está en el estado
Un índice en el estado |
| El índice no existe. Un índice en el estado |
| Atlas está borrando el índice. Un índice en el estado |
| La creación de índices falló. Los índices pueden entrar en el estado Un índice en el estado |
| Atlas aún no ha comenzado a desarrollar el índice. Un índice en el estado |
| El índice está listo y puede soportar queries. Un índice en el estado |
| El índice es consultable pero ha dejado de replicar datos de la colección indexada. Las búsquedas en el índice pueden devolver datos desactualizados. Los índices pueden ingresar al estado Un índice en el estado |
Ejemplos
Estos ejemplos demuestran cómo:
Devolución de todos los índices de búsqueda
El siguiente ejemplo devuelve todos los índices Atlas Search de la colección movies. La colección movies contiene dos índices de búsqueda: default y synonym_mappings.
db.movies.getSearchIndexes()
Salida de muestra:
[ { id: '6524096020da840844a4c4a7', name: 'default', status: 'BUILDING', queryable: true, latestDefinitionVersion: { version: 2, createdAt: ISODate("2023-10-09T14:51:57.355Z") }, latestDefinition: { mappings: { dynamic: true }, storedSource: { include: [ 'awards.text' ] } }, statusDetail: [ { hostname: 'atlas-n1cm1j-shard-00-02', status: 'BUILDING', queryable: true, mainIndex: { status: 'READY', queryable: true, definitionVersion: { version: 0, createdAt: ISODate("2023-10-09T14:08:32.000Z") }, definition: { mappings: { dynamic: true, fields: {} } } }, stagedIndex: { status: 'PENDING', queryable: false, definitionVersion: { version: 1, createdAt: ISODate("2023-10-09T14:51:29.000Z") }, definition: { mappings: { dynamic: true, fields: {} }, storedSource: true } } }, { hostname: 'atlas-n1cm1j-shard-00-01', status: 'BUILDING', queryable: true, mainIndex: { status: 'READY', queryable: true, definitionVersion: { version: 0, createdAt: ISODate("2023-10-09T14:08:32.000Z") }, definition: { mappings: { dynamic: true, fields: {} } } }, stagedIndex: { status: 'PENDING', queryable: false, definitionVersion: { version: 1, createdAt: ISODate("2023-10-09T14:51:29.000Z") }, definition: { mappings: { dynamic: true, fields: {} }, storedSource: true } } }, { hostname: 'atlas-n1cm1j-shard-00-00', status: 'BUILDING', queryable: true, mainIndex: { status: 'READY', queryable: true, definitionVersion: { version: 0, createdAt: ISODate("2023-10-09T14:08:32.000Z") }, definition: { mappings: { dynamic: true, fields: {} } } } } ] }, { id: '65240be420da840844a4d077', name: 'synonym_mappings', status: 'READY', queryable: true, latestDefinitionVersion: { version: 0, createdAt: ISODate("2023-10-09T14:19:16.305Z") }, latestDefinition: { mappings: { dynamic: true, fields: { fullplot: { type: 'string' } } }, synonyms: [ { name: 'synonym_mapping', analyzer: 'lucene.english', source: { collection: 'synonyms' } } ] }, synonymMappingStatus: 'READY', synonymMappingStatusDetail: [ { synonym_mapping: { status: 'READY', queryable: true } } ], statusDetail: [ { hostname: 'atlas-n1cm1j-shard-00-02', status: 'READY', queryable: true, mainIndex: { status: 'READY', queryable: true, definitionVersion: { version: 0, createdAt: ISODate("2023-10-09T14:19:16.000Z") }, definition: { mappings: { dynamic: true, fields: { fullplot: { type: 'string', indexOptions: 'offsets', store: true, norms: 'include' } } }, synonyms: [ { name: 'synonym_mapping', analyzer: 'lucene.english', source: { collection: 'synonyms' } } ] }, synonymMappingStatus: 'READY', synonymMappingStatusDetail: [ { synonym_mapping: { status: 'READY', queryable: true } } ] } }, { hostname: 'atlas-n1cm1j-shard-00-01', status: 'READY', queryable: true, mainIndex: { status: 'READY', queryable: true, definitionVersion: { version: 0, createdAt: ISODate("2023-10-09T14:19:16.000Z") }, definition: { mappings: { dynamic: true, fields: { fullplot: { type: 'string', indexOptions: 'offsets', store: true, norms: 'include' } } }, synonyms: [ { name: 'synonym_mapping', analyzer: 'lucene.english', source: { collection: 'synonyms' } } ] }, synonymMappingStatus: 'READY', synonymMappingStatusDetail: [ { synonym_mapping: { status: 'READY', queryable: true } } ] } }, { hostname: 'atlas-n1cm1j-shard-00-00', status: 'READY', queryable: true, mainIndex: { status: 'READY', queryable: true, definitionVersion: { version: 0, createdAt: ISODate("2023-10-09T14:19:16.000Z") }, definition: { mappings: { dynamic: true, fields: { fullplot: { type: 'string', indexOptions: 'offsets', store: true, norms: 'include' } } }, synonyms: [ { name: 'synonym_mapping', analyzer: 'lucene.english', source: { collection: 'synonyms' } } ] }, synonymMappingStatus: 'READY', synonymMappingStatusDetail: [ { synonym_mapping: { status: 'READY', queryable: true } } ] } } ] } ]
Devolver un índice de búsqueda único
El siguiente ejemplo devuelve el índice synonym_mappings en la colección movies:
db.movies.getSearchIndexes("synonym_mappings")
Salida de muestra:
[ { id: '65240be420da840844a4d077', name: 'synonym_mappings', status: 'READY', queryable: true, latestDefinitionVersion: { version: 0, createdAt: ISODate("2023-10-09T14:19:16.305Z") }, latestDefinition: { mappings: { dynamic: true, fields: { fullplot: { type: 'string' } } }, synonyms: [ { name: 'synonym_mapping', analyzer: 'lucene.english', source: { collection: 'synonyms' } } ] }, synonymMappingStatus: 'READY', synonymMappingStatusDetail: [ { synonym_mapping: { status: 'READY', queryable: true } } ], statusDetail: [ { hostname: 'atlas-n1cm1j-shard-00-02', status: 'READY', queryable: true, mainIndex: { status: 'READY', queryable: true, definitionVersion: { version: 0, createdAt: ISODate("2023-10-09T14:19:16.000Z") }, definition: { mappings: { dynamic: true, fields: { fullplot: { type: 'string', indexOptions: 'offsets', store: true, norms: 'include' } } }, synonyms: [ { name: 'synonym_mapping', analyzer: 'lucene.english', source: { collection: 'synonyms' } } ] }, synonymMappingStatus: 'READY', synonymMappingStatusDetail: [ { synonym_mapping: { status: 'READY', queryable: true } } ] } }, { hostname: 'atlas-n1cm1j-shard-00-01', status: 'READY', queryable: true, mainIndex: { status: 'READY', queryable: true, definitionVersion: { version: 0, createdAt: ISODate("2023-10-09T14:19:16.000Z") }, definition: { mappings: { dynamic: true, fields: { fullplot: { type: 'string', indexOptions: 'offsets', store: true, norms: 'include' } } }, synonyms: [ { name: 'synonym_mapping', analyzer: 'lucene.english', source: { collection: 'synonyms' } } ] }, synonymMappingStatus: 'READY', synonymMappingStatusDetail: [ { synonym_mapping: { status: 'READY', queryable: true } } ] } }, { hostname: 'atlas-n1cm1j-shard-00-00', status: 'READY', queryable: true, mainIndex: { status: 'READY', queryable: true, definitionVersion: { version: 0, createdAt: ISODate("2023-10-09T14:19:16.000Z") }, definition: { mappings: { dynamic: true, fields: { fullplot: { type: 'string', indexOptions: 'offsets', store: true, norms: 'include' } } }, synonyms: [ { name: 'synonym_mapping', analyzer: 'lucene.english', source: { collection: 'synonyms' } } ] }, synonymMappingStatus: 'READY', synonymMappingStatusDetail: [ { synonym_mapping: { status: 'READY', queryable: true } } ] } } ] } ]