Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

Índices de pesquisa do MongoDB

MongoDB Search permite realizar pesquisas de texto completo em coleções hospedadas no MongoDB Atlas. Os índices de pesquisa do MongoDB especificam o comportamento da pesquisa e quais campos indexar.

Você pode chamar os seguintes métodos em uma coleção para gerenciar seus índices de pesquisa MongoDB :

  • createSearchIndex()

  • createSearchIndexes()

  • listSearchIndexes()

  • updateSearchIndex()

  • dropSearchIndex()

Observação

Os métodos de gerenciamento do índice de pesquisa do MongoDB Search são executados de forma assíncrona e podem retornar antes de confirmar que foram executados com sucesso. Para determinar o status atual dos índices, chame o método listSearchIndexes().

As seções a seguir fornecem exemplos de código que demonstram como usar cada um dos métodos anteriores.

Você pode usar os métodos createSearchIndex() e createSearchIndexes() para criar um ou mais índices de pesquisa MongoDB.

Você também pode usar esses métodos para criar índices de pesquisa Vector Search do MongoDB. A pesquisa vetorial do MongoDB permite realizar pesquisas semânticas em incorporações vetoriais armazenadas no MongoDB Atlas. Para saber mais sobre esse recurso, consulte a Visão geral da pesquisa vetorial do MongoDB.

O seguinte exemplo de código mostra como criar um índice de pesquisa MongoDB :

val index = Document("mappings" -> Document("dynamic" -> true))
collection.createSearchIndex("<index name>", index)
.subscribe((result: String) => ())

O seguinte exemplo de código mostra como criar múltiplos índices: Ao contrário do método createSearchIndex(), que atribui um nome padrão ao índice criado, é necessário fornecer nomes para cada índice ao usar o método createSearchIndexes().

val indexOne = SearchIndexModel("<first index name>", Document("mappings" -> Document("dynamic" -> true, "fields" -> Document("field1" -> Document("type" -> "string")))))
val indexTwo = SearchIndexModel("<second index name>", Document("mappings" -> Document("dynamic" -> false, "fields" -> Document("field2" -> Document("type" -> "string")))))
collection.createSearchIndexes(List(indexOne, indexTwo))
.subscribe((result: String) => ())

Para saber mais sobre a sintaxe usada para definir índices de índice de pesquisa do MongoDB Search, consulte o Guia Revisar a sintaxe do índice de pesquisa do MongoDB Search no manual do Atlas.

Você pode usar o método listSearchIndexes() para retornar todos os índices de pesquisa do MongoDB Search em uma coleção.

O exemplo de código a seguir mostra como imprimir uma lista dos índices de pesquisa de uma coleção assinando o Observable retornado pelo método listSearchIndexes():

collection.listSearchIndexes()
.subscribe((result: Document) => println(result.toJson()))
{"id": "...", "name": "<index name 1>", "type": "search", "status": "READY", "queryable": true, ... }
{"id": "...", "name": "<index name 2>", "type": "search", "status": "READY", "queryable": true, ... }

Você pode usar o método updateSearchIndex() para atualizar um índice de pesquisa do MongoDB.

O seguinte código mostra como atualizar um índice de pesquisa:

val updateIndex = Document("mappings" -> Document("dynamic" -> false))
collection.updateSearchIndex("<index to update>", updateIndex)
.subscribe((result: Unit) => ())

Você pode usar o método dropSearchIndex() para excluir um índice de pesquisa do MongoDB.

O seguinte código mostra como excluir um índice de pesquisa de uma coleção:

collection.dropSearchIndex("<index name>")
.subscribe((result: Unit) => ())

Para saber mais sobre o Pesquisa MongoDB, consulte a documentação da Pesquisa MongoDB.

Para saber mais sobre os métodos e tipos mencionados neste guia, consulte a documentação da API abaixo: