db.collection.getSearchIndexes()
Nesta página
Definição
Novidade na versão 7.0: (Disponível também a partir de 6.0.7)
Retorna informações sobre os índices existentes doAtlas Search em uma collection especificada.
Importante
Método mongosh
Esta página documenta um método mongosh
. Esta não é a documentação para um driver específico de idioma, como Node.js.
Para drivers de API do MongoDB, consulte a documentação do driver do MongoDB específica da linguagem.
Compatibilidade
Esse método está disponível em implantações hospedadas nos seguintes ambientes:
MongoDB Atlas: o serviço totalmente gerenciado para implantações do MongoDB na nuvem
Importante
Esse comando não é aceito em clusters M0, M2 e M5 ou em instâncias sem servidor. Para obter mais informações, consulte Comandos não suportados.
Sintaxe
Sintaxe do comando:
db.<collection>.getSearchIndexes(<indexName>)
Campos de comando
getSearchIndexes()
usa este campo:
Campo | Tipo | necessidade | Descrição |
---|---|---|---|
| string | Opcional | Nome do índice sobre o qual retornar informações. Se você omitir o campo |
Controle de acesso
Se a sua implementação impõe controle de acesso, o usuário que executa o getSearchIndexes()
deve ter a ação de privilégio listSearchIndexes
no banco de banco de dados ou na collection:
{ resource: { db : <database>, collection: <collection> }, actions: [ "listSearchIndexes" ] }
A função read
integrada fornece o privilégio listSearchIndexes
. O exemplo a seguir concede a função read
no banco de dados qa
:
db.grantRolesToUser( "<user>", [ { role: "read", db: "qa" } ] )
Saída
getSearchIndexes()
retorna uma array de documentos. Cada documento no array contém os seguintes campos:
Campo | Tipo | Descrição |
---|---|---|
| string | Identificador exclusivo para o índice. |
| string | Nome do índice. |
| string | Status do índice. Para mais informações, consulte Status do índice do Atlas Search. |
| booleano | Indica se o índice está pronto para ser query. |
| documento | Descreve a versão do índice. |
| inteiro | Número da versão associado à definição do índice. Quando você atualiza uma definição de índice, o número da versão é incrementado automaticamente. |
| data | Hora em que a definição de índice atual foi criada. |
| documento | A definição mais recente para o índice. Para obter mais informações, consulte Sintaxe de definição do índice de pesquisa. |
| matriz de documentos | contém o status do índice em cada host de pesquisa ( |
| string | Nome do host do |
| string | Status do índice no |
| booleano | Indica se o índice está pronto para ser consultado no |
| documento | Contém informações de status sobre o índice ativo no Para obter detalhes, consulte Detalhes do status do índice. |
| documento | Contém informações de status sobre um índice que está sendo criado em segundo plano no Para obter detalhes, consulte Detalhes do status do índice. |
| string | Status dos mapeamentos de sinônimos do índice. Esse campo só aparece se o índice tiver sinônimos definidos. Pode ser um dos seguintes valores:
O status retornado é um resumo dos mapeamentos de sinônimos em cada |
| matriz de documentos | Contém o status dos mapeamentos de sinônimos do índice em cada host de pesquisa ( |
| string | Status do mapeamento de sinônimos correspondente em todos os processos |
| booleano | Indica se o mapeamento de sinônimos correspondente pode suportar queries em todos os processos do |
| string | Descreve um erro para o mapeamento de sinônimos, se aplicável. Só aparece se o |
Detalhes de status do índice
A tabela a seguir descreve os campos incorporados dos seguintes documentos: - statusDetail.[mongot].mainIndex
- statusDetail.[mongot].stagedIndex
Os campos descrevem o status do índice em um mongot
específico.
Campo | Tipo | Descrição |
---|---|---|
| string | O estado da geração de índice no |
| booleano | Indica se a geração do índice está pronta para passar por query no |
| string | O estado dos mapeamentos de sinônimos da geração de índice no |
| documento | Contém o status dos mapeamentos de sinônimos do índice no Para obter mais informações, consulte Detalhes de mapeamento de sinônimos. |
| documento | Descreve a versão da definição de índice com a qual esta geração de índice está sendo construída. |
| inteiro | Número da versão que a geração do índice está usando no |
| data | Hora em que a definição de índice foi criada. |
| documento | A definição com a qual esse índice está sendo construído. |
Detalhes de mapeamento de sinônimo
A tabela a seguir descreve os campos incorporados dos seguintes objetos:
statusDetail.mainIndex.synonymMappingStatusDetails.<synonymMapping>
statusDetail.stagedIndex.synonymMappingStatusDetails<synonymMapping>
Campo | Tipo | Descrição |
---|---|---|
| string | Status do mapeamento de sinônimos no processo |
| booleano | Indica se o mapeamento de sinônimos pode dar suporte a consultas no processo |
| string | Descreve um erro para o mapeamento de sinônimos, se aplicável. Só aparece se o |
Status do índice do Atlas Search
O campo status
na saída getSearchIndexes()
pode ser um dos seguintes:
Status | Descrição |
---|---|
| Os cenários a seguir podem fazer com que um índice esteja no estado
Quando o índice está no estado
Um índice no estado |
| O índice não existe. Um índice no estado |
| O Atlas está excluindo o índice. Um índice no estado |
| A criação do índice falhou. Os índices podem entrar no estado Um índice no estado |
| Atlas ainda não começou a construir o índice. Um índice no estado |
| O índice está pronto e tem suporte para queries. Um índice no estado |
| O índice é consultável, mas parou de replicar dados da coleção indexada. As pesquisas no índice podem retornar dados desatualizados. Os índices podem entrar no estado Um índice no estado |
Exemplos
Esses exemplos demonstram como:
Retornar todos os índices de pesquisa
O exemplo a seguir retorna todos os índice de pesquisa do Atlas Search na collection movies
. A collection movies
contém dois índice de pesquisa: default
e synonym_mappings
.
db.movies.getSearchIndexes()
Saída de amostra:
[ { 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 } } ] } } ] } ]
Retornar um único índice de pesquisa
O exemplo a seguir retorna o índice synonym_mappings
na collection movies
:
db.movies.getSearchIndexes("synonym_mappings")
Saída de amostra:
[ { 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 } } ] } } ] } ]