Índices de pesquisa do Atlas
Nesta página
Visão geral
O Atlas Search permite que você realize pesquisas de texto completo em coleções hospedadas no MongoDB Atlas. Os índices do Atlas Search 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 Atlas Search:
createSearchIndex()
createSearchIndexes()
listSearchIndexes()
updateSearchIndex()
dropSearchIndex()
Observação
Os métodos de gerenciamento de índice do Atlas Search são executados de forma assíncrona e podem retornar antes de confirmar que foram executados com êxito. 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.
Criar um índice de pesquisa
Você pode utilizar os métodos createSearchIndex()
e createSearchIndexes()
para criar um ou mais índices de Atlas Search .
Você também pode usar esses métodos para criar índices do Atlas Vector Search. O Atlas Vector Search permite que você realize pesquisas semânticas em incorporações vetoriais armazenadas no MongoDB Atlas. Para saber mais sobre esse recurso, consulte a Visão geral do Atlas Vector Search.
O seguinte exemplo de código mostra como criar um índice Atlas Search:
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, você deve fornecer nomes de índice para cada índice ao utilizar 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 os índices do Atlas Search, consulte o guia Review Atlas Search Index Syntax no manual do Atlas.
Listar índices de pesquisa
Você pode usar o método listSearchIndexes()
para retornar todos os índices do Atlas Search em uma coleção.
O seguinte exemplo de código mostra como imprimir uma lista dos índices de pesquisa em 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, ... }
Atualizar um Índice de Pesquisa
Você pode utilizar o método updateSearchIndex()
para atualizar um índice de Atlas Search .
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) => ())
Excluir um índice de pesquisa
Você pode utilizar o método dropSearchIndex()
para excluir um índice de Atlas Search .
O seguinte código mostra como excluir um índice de pesquisa de uma coleção:
collection.dropSearchIndex("<index name>") .subscribe((result: Unit) => ())
Informações adicionais
Para saber mais sobre o Atlas Search, consulte a documentação do Atlas Search .
Documentação da API
Para saber mais sobre os métodos e tipos mencionados neste guia, consulte a documentação da API abaixo: