Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

db.colección.getSearchIndexes() (método mongosh)

db.collection.getSearchIndexes()

Nuevo en la versión 7.0: (También disponible a partir de la versión 6.0.7)

Devuelve información sobre los existentes Índices de búsqueda de MongoDB o Índices de búsqueda vectorial de MongoDB en una colección o vista especificada.

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.

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 del comando:

db.<collection>.getSearchIndexes(<indexName>)

getSearchIndexes() toma este campo:

Campo
Tipo
Necesidad
Descripción

indexName

string

Opcional

Nombre del índice para devolver información al respecto. Si se omite el campo indexName, getSearchIndexes() devuelve información sobre todos los índices de Búsqueda de MongoDB en la colección.

Si tu implementación aplica control de acceso, el usuario que ejecute getSearchIndexes() debe tener el listSearchIndexes acción de privilegio en la base de datos o colección:

{
resource: {
db : <database>,
collection: <collection>
},
actions: [ "listSearchIndexes" ]
}

El rol integrado read proporciona el privilegio de listSearchIndexes. El siguiente ejemplo otorga el rol read en la base de datos qa:

db.grantRolesToUser(
"<user>",
[ { role: "read", db: "qa" } ]
)

getSearchIndexes() devuelve un arreglo de documentos. Cada documento en el arreglo contiene los siguientes campos:

Campo
Tipo
Descripción

id

string

Identificador único del índice.

name

string

Nombre del índice.

status

string

Estado del índice. Para más información, consulta Estados de índices de MongoDB Search.

queryable

booleano

Indica si el índice está listo para ser consultado.

latestDefinitionVersion

Documento

Describe la versión del índice.

latestDefinitionVersion.version

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.

latestDefinitionVersion.createdAt

fecha

Hora cuando se creó la definición actual del índice.

latestDefinition

Documento

La definición más reciente del índice. Para más información, consulta Sintaxis de la Definición del Índice de Búsqueda.

statusDetail

arreglo de documentos

Contiene el estado del índice en cada host de búsqueda (mongot).

statusDetail.[n].hostname

string

Hostname del mongot correspondiente. MongoDB representa este campo como <replSetName>.<server.name>.<server.id>.

Puede especificar el server.name para una implementación local en su archivo de configuración.

statusDetail.[n].status

string

Estado del índice en el correspondiente mongot.

statusDetail.[n].queryable

booleano

Indica si el índice está listo para ser query en el correspondiente mongot.

statusDetail.[n].mainIndex

Documento

Contiene información de estado sobre el índice activo en el correspondiente mongot.

Para obtener más detalles, consulta Detalles del estado del índice.

statusDetail.[n].stagedIndex

Documento

Contiene información de estado sobre un índice que se está construyendo en segundo plano en el mongot correspondiente. Este campo solo aparece si se está creando un nuevo índice para actualizar un índice activo existente.

Para obtener más detalles, consulta Detalles del estado del índice.

synonymMappingStatus

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:

  • BUILDING

  • FAILED

  • READY

El estado devuelto es un resumen de los mapeos de sinónimos en cada mongot individual.

synonymMappingStatusDetail

arreglo de documentos

Contiene el estado de los mapeos de sinónimos del índice en cada host de búsqueda (mongot). Este campo (y sus subcampos) solo aparecen si el índice tiene sinónimos definidos.

synonymMappingStatusDetail.[n].status

string

Estado de la asignación de sinónimos correspondiente en todos los procesos de mongot.

synonymMappingStatusDetail.[n].queryable

booleano

Indica si la asignación de sinónimos correspondiente puede admitir query en todos los procesos mongot.

message

string

Describe un error para el mapeo de sinónimos, si corresponde. Solo aparece si el status para este mapeo de sinónimos es FAILED.

La siguiente tabla describe los campos integrados 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

status

string

El estado de la generación del índice en el mongot correspondiente.

queryable

booleano

Indica si la generación del índice está lista para ser consultada en el mongot correspondiente.

synonymMappingStatus

string

El estado de los mapeos de sinónimos de la generación de índices en el mongot correspondiente. Solo está presente si el índice tiene sinónimos definidos.

synonymMappingStatusDetails

Documento

Contiene el estado de los mapeos de sinónimos del índice en el correspondiente mongot. Este campo (y sus subcampos) solo aparecen si el índice tiene sinónimos definidos.

Para más información, consulta Detalles de mapeo de sinónimos.

definitionVersion

Documento

Describe la versión de definición del índice con la que se está compilando esta generación de índices.

definitionVersion.version

entero

Número de versión que la generación del índice está utilizando en el correspondiente mongot. Cuando se actualiza una definición de índice, el índice actualizado se construye con un número de versión incrementado.

definitionVersion.createdAt

fecha

Hora en que se creó la definición del índice.

definition

Documento

La definición con la que se está construyendo este índice.

La siguiente tabla describe los campos embebidos de los siguientes objetos:

  • statusDetail.mainIndex.synonymMappingStatusDetails.<synonymMapping>

  • statusDetail.stagedIndex.synonymMappingStatusDetails<synonymMapping>

Campo
Tipo
Descripción

status

string

Estado para la mapeo de sinónimos en el proceso correspondiente mongot.

queryable

booleano

Indica si el mapeo de sinónimos puede admitir query sobre el proceso mongot correspondiente.

message

string

Describe un error para el mapeo de sinónimos, si corresponde. Solo aparece si el status para este mapeo de sinónimos es FAILED.

El campo status en la salida de getSearchIndexes() puede ser uno de los siguientes:

Estado
Descripción

BUILDING

Los siguientes escenarios pueden provocar que un índice se encuentre en el estado BUILDING:

  • MongoDB está creando el índice o reconstruyéndolo después de una edición.

  • MongoDB Search no puede mantenerse al día con los cambios de indexación en la colección. En este caso, Atlas reconstruye el índice en segundo plano.

Cuando el índice está en el estado BUILDING:

  • Para un nuevo índice, MongoDB Search no puede utilizar el índice para consultas hasta que la creación del índice esté completa.

  • Para un índice existente, MongoDB Search utiliza la antigua definición del índice para las consultas hasta que se complete la reconstrucción del índice.

Un índice en el estado BUILDING puede ser consultable o no consultable.

DOES_NOT_EXIST

El índice no existe.

Un índice en el estado DOES_NOT_EXIST nunca se puede consultar.

DELETING

MongoDB está borrando el índice.

Un índice en el estado DELETING nunca se puede consultar.

FAILED

La creación de índices falló. Los índices pueden entrar en el estado FAILED debido a una definición de índice no válida.

Un índice en el estado FAILED puede ser consultable o no consultable.

PENDING

MongoDB aún no ha comenzado a crear el índice.

Un índice en el estado PENDING nunca se puede consultar.

READY

El índice está listo y puede soportar queries.

Un índice en el estado READY siempre se puede consultar.

STALE

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 entrar en el estado STALE debido a errores de replicación.

Un índice en el estado STALE siempre se puede consultar.

Estos ejemplos demuestran cómo:

El siguiente ejemplo devuelve todos los índices MongoDB Search en 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
}
}
]
}
}
]
}
]

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
}
}
]
}
}
]
}
]

Volver

db.colección.dropSearchIndex

En esta página