Menu Docs
Página inicial do Docs
/ /

MongoDB\Collection::createSearchIndexes()

Novidade na versão 1.17.

MongoDB\Collection::createSearchIndexes()

Crie um ou mais índices do MongoDB Search ou Vector Search para a collection.

function createSearchIndexes(
array $indexes,
array $options = []
): string

Este comando só pode ser executado em um sistema hospedado no MongoDB Atlas e requer uma camada do cluster Atlas de pelo menos M10. Um sistema local do Atlas também pode ser usado para desenvolvimento.

$indexes : array

Array de documentos que descrevem os índices a serem criados.

Um campo de documento definition obrigatório descreve o índice a ser criado. Para obter detalhes sobre a sintaxe de definição, consulte Sintaxe de definição do índiceAtlas Search .

Um campo de string name opcional especifica o nome do índice de pesquisa para criar. Você não pode criar vários índices com o mesmo nome em uma única coleção. Se você não especificar um nome, o nome do índice padrão será default.

Um campo de string type opcional especifica o tipo de índice de pesquisa a ser criado. Os valores aceitos são 'search' e 'vectorSearch'. Se você não especificar um tipo, o método criará um índice do MongoDB Search.

$options : array

Uma array especificando as opções desejadas.

Nome
Tipo
Descrição

comment

misto

Permite ao usuário especificar um comentário arbitrário para ajudar a rastrear a operação por meio do profiler de banco de dados, da saída currentOp e dos registros.

Os nomes dos índices MongoDB Search e Vector Search criados como uma array de strings.

MongoDB\Exception\UnsupportedException se as opções forem usadas e não aceitas pelo servidor selecionado (p. ex., collation, readConcern, writeConcern).

MongoDB\Exception\InvalidArgumentException para erros relacionados à análise de parâmetros ou opções.

MongoDB\Driver\Exception\RuntimeException para outros erros no nível da extensão (por exemplo erros de conexão).

Os índices de pesquisa e Vector Search do MongoDB são gerenciados de forma assíncrona. Após criar ou atualizar um índice, você pode executar periodicamente o e verificar MongoDB\Collection::listSearchIndexes() o queryable campo de saída do para determinar se ele está pronto para ser utilizado.

O exemplo a seguir cria um índice do MongoDB Search usando mapeamentos dinâmicos para indexar todos os campos de documento que contêm tipos de dados compatíveis.

<?php
$collection = (new MongoDB\Client)->selectCollection('test', 'articles');
$indexNames = $collection->createSearchIndexes(
[
[
'name' => 'test-search-index',
'definition' => ['mappings' => ['dynamic' => true]],
],
]
);
var_dump($indexNames);

A saída seria então semelhante a:

array(1) {
[0]=>
string(17) "test-search-index"
}

Voltar

createSearchIndex()

Nesta página