Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
Docs Menu
Docs Home
/ /

Índices de texto en implementaciones autogestionadas

Nota

Esta página describe las capacidades de query de texto para implementaciones autogestionadas (no-Atlas). Para los datos alojados en MongoDB Atlas, MongoDB ofrece una solución mejorada de query de texto completo. Búsqueda Atlas y una solución de búsqueda vectorial, Búsqueda vectorial Atlas.

Soporte para índices de texto consultas de búsqueda de texto en campos con contenido de string. Los índices de texto mejoran el rendimiento al buscar palabras o cadenas específicas.

Una colección puede tener solo un índice de texto, pero ese índice puede incluir varios campos.

Para crear un índice de texto, utilice el siguiente prototipo:

db.<collection>.createIndex(
{
<field1>: "text",
<field2>: "text",
...
}
)

Soporte para índices de texto $text consultas sobre implementaciones autogestionadas. Debe crear un índice de texto para usar $text.

La colección clothing de una tienda en línea tiene un campo description que contiene un string de texto que describe cada artículo. Para encontrar ropa hecha de "silk", crea un índice de texto en description y ejecuta una query $text para "silk". La búsqueda devuelve todos los documentos que mencionan "silk" en description.

Para aprender a crear y utilizar índices de texto, consulta:

Esta sección describe los detalles del índice de texto.

En un índice compuesto con una clave de índice de texto y otros tipos de claves, solo el campo de índice de texto determina si el índice hace referencia a un documento. Otras claves no afectan a las referencias de los documentos.

Los índices de texto no pueden cubrir una consulta.

Los índices de texto siempre son dispersos. MongoDB ignora la opción sparse al crear índices de texto.

MongoDB no agrega una entrada de índice para los documentos que carecen del campo de índice de texto, tienen valores nulos o tienen arreglos vacíos.

Los índices de texto tienen estas características de almacenamiento y rendimiento:

  • Los índices de texto pueden consumir una cantidad significativa de RAM. Contienen una entrada de índice para cada palabra única radicalizada en cada campo indexado para cada documento.

  • La creación de un índice de texto es similar a la de un índice de varias claves grande, pero lleva más tiempo que crear un índice ordenado (escalar) sobre los mismos datos.

  • Al crear índices de texto grandes, se deben garantizar límites suficientes de descriptores de archivos. Ver configuración recomendada.

  • Los índices de texto impactan el rendimiento de las escrituras porque MongoDB debe agregar una entrada de índice para cada palabra derivada única en cada campo indexado de los documentos nuevos.

  • Los índices de texto almacenan palabras individuales, no cadenas de varias palabras ni información de proximidad de palabras. Las queries con varias palabras se ejecutan más rápido cuando toda la colección cabe en la memoria RAM.

Volver

$text Lenguajes de consulta

En esta página