Docs Menu
Docs Home
/ /

MongoDB\Collection::createSearchIndex()

Nuevo en la versión 1.17.

MongoDB\Collection::createSearchIndex()

Cree un índice de búsqueda MongoDB o de búsqueda vectorial MongoDB para la colección.

function createSearchIndex(
array|object $definition,
array $options = []
): string

Este comando solo se puede ejecutar en una implementación alojada en MongoDB Atlas requiere un nivel de clúster Atlas de al menos M.10 También se puede usar una implementación local de Atlas para el desarrollo.

$definition : matriz|objeto
Documento que describe el índice que se creará. Para más información sobre la sintaxis de definición, consulte Sintaxis de definición de índice de búsqueda.
$options : matriz

Una matriz que especifica las opciones deseadas.

Nombre
Tipo
Descripción

comment

mixto

Permite a los usuarios especificar un comentario arbitrario para ayudar a rastrear la operación a través del generador de perfiles de base de datos, la salidacurrentOp y los registros.

Nombre

string

Name of the search index to create.
You cannot create multiple indexes with the same name on a single collection. If you do not specify a name, the default index name is default.

tipo

string

Tipo de índice a crear. Los valores aceptados son 'search' y 'vectorSearch'. Si omite esta opción, el valor predeterminado es 'search' y el método crea un índice de búsqueda de MongoDB.

El nombre del índice de búsqueda MongoDB o búsqueda vectorial creado como una cadena.

MongoDB\Exception\UnsupportedException si se utilizan opciones que no son compatibles con el servidor seleccionado (porcollation readConcernwriteConcernejemplo,,,).

MongoDB\Exception\InvalidArgumentException para errores relacionados con el análisis de parámetros u opciones.

MongoDB\Controlador\Excepción\Excepción de tiempo de ejecución para otros errores a nivel de extensión (por ejemplo errores de conexión).

Los índices de MongoDB Search y Vector Search se gestionan de forma asíncrona. Después de crear o actualizar un índice, puedes ejecutar periódicamente y comprobar MongoDB\Collection::listSearchIndexes() el queryable campo de salida para determinar si está listo para usarse.

El siguiente ejemplo crea un índice de búsqueda de MongoDB utilizando asignaciones dinámicas para indexar todos los campos de documentos que contienen tipos de datos admitidos.

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

El resultado sería entonces similar a lo siguiente:

string(17) "test-search-index"

Volver

createIndexes()

En esta página