Puede utilizar la búsqueda de MongoDB autocomplete escriba para indexar valores de texto en campos de string para autocompletado. Puedes consultar campos indexados como tipo autocomplete utilizando el autocomplete operador.
También se puede usar el tipo autocomplete para indexar:
Campos cuyo valor es un arreglo de cadenas de texto. Para obtener más información, consulta Cómo indexar los elementos de un arreglo.
Campos de cadena dentro de un arreglo de documentos indexados como el tipo embeddedDocuments.
Tip
Si se tiene una gran cantidad de documentos y un amplio rango de datos sobre los que se desea ejecutar consultas de búsqueda de MongoDB utilizando el operador autocomplete, la creación de este índice puede llevar algún tiempo. Alternativamente, se puede crear un índice separado con solo el tipo de
autocompletepara reducir el impacto en otros índices y consultas mientras se crea el índice.Para aprender más, consulta Consideraciones sobre el rendimiento de MongoDB Índice de búsqueda .
El tipo
autocompleteno está incluido en el conjunto por defecto de tipos que MongoDB Search utiliza para correspondencias dinámicas. Para indexar dinámicamente los campos de string como el tipoautocomplete, se puede incluir el tipoautocompleteen una definición personalizada detypeSet. Sin embargo,autocompletetiene características únicas de rendimiento, almacenamiento y puntuación que podrían no ser adecuadas para mapeos dinámicos. Recomendamos usarautocompletesolo en mapeos estáticos. Para aprender más, consulta Rendimiento del índice de MongoDB Search.
Define el índice para el tipo autocomplete
Configurar las propiedades del campo autocomplete
El tipo autocomplete de búsqueda de MongoDB toma los siguientes parámetros:
Opción | Tipo | Necesidad | Descripción | predeterminado | ||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| string | Requerido | Etiqueta legible por humanos que identifica este tipo de campo. El valor debe ser | |||||||||||||||||||||||
| string | Opcional | Nombre del analizador que se debe utilizar con este mapeo de autocompletado. Se puede utilizar cualquier analizador de búsqueda de MongoDB excepto el |
| ||||||||||||||||||||||
| Int | Opcional | Número máximo de caracteres por secuencia indexada. El valor limita la longitud de caracteres de los tokens indexados. Cuando buscas términos más largos que el valor We recommend setting the |
| ||||||||||||||||||||||
| Int | Opcional | Número mínimo de caracteres por secuencia indexada. Recomendamos |
| ||||||||||||||||||||||
| enum | Opcional | Estrategia de tokenización que se utilizará en la indexación del campo para autocompletar. El valor puede ser uno de los siguientes:
Cuando se tokeniza con un valor de La indexación de un campo para autocompletar con una estrategia de tokenización Para la estrategia de tokenización especificada, MongoDB búsqueda aplica el siguiente proceso para concatenar tokens secuenciales antes de emitirlos. Este proceso a veces se denomina "shingling". Búsqueda de MongoDB emite tokens de entre
|
| ||||||||||||||||||||||
| booleano | Opcional | Flag that indicates whether to perform normalizations como incluir o remover diacríticos del texto indexado. El valor puede ser uno de los siguientes:
|
| ||||||||||||||||||||||
| string | Opcional | Nombre del algoritmo de similitud que se utilizará con este mapeo de cadenas al puntuar con el operador de autocompletar. El valor puede ser uno de los siguientes: Para aprender más sobre los algoritmos de similitud disponibles, consulte Detalles de la puntuación. |
|
Prueba un ejemplo para el tipo autocomplete
Obtén más información
Para aprender más sobre el operador autocomplete y ver queries de ejemplo, consulta autocompletado.
For examples that demonstrate how to run case-insensitive, prefix, starts with, and contains queries using regex expressions, see Use MongoDB Search Instead of Regex Queries.