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

Resumen de la búsqueda de MongoDB

MongoDB Search es una búsqueda de texto completo integrada que proporciona una experiencia sin interrupciones y escalable para desarrollar características de aplicación basadas en relevancia, lo que elimina la necesidad de ejecutar un sistema de búsqueda separado junto a la base de datos.

Se puede usar MongoDB Search para la indexación de texto detallada y la query de datos en el clúster. MongoDB Search ofrece varios tipos de analizadores de texto, un rico lenguaje de la query para crear lógica de búsqueda compleja, una clasificación personalizable basada en puntuaciones y características avanzadas de búsqueda para las aplicaciones como autocompletado, paginación y facetas.

Primeros pasos con MongoDB Search

MongoDB búsqueda admite diversos casos de uso, incluidos los siguientes:

  • Buscar mientras escribe: Para predecir palabras con una precisión cada vez mayor a medida que los usuarios introducen caracteres en el campo de búsqueda de la aplicación, se puede utilizar el operador de autocompletado de MongoDB Search para predecir y devolver resultados para palabras parciales. Para obtener más información, se debe consultar Cómo ejecutar consultas de MongoDB Search con autocompletar y coincidencia parcial.

  • Búsqueda por facetas: para permitir a los usuarios de la aplicación limitar los resultados de búsqueda mediante el uso de filtros, se puede utilizar el recopilador de MongoDB Search facet (operador de MongoDB Search) para compilar facetas que agrupen los resultados por valores o rangos en los campos con facetas. Para obtener más información, se debe consultar Cómo utilizar facetas con la MongoDB Search.

  • Resultados paginados: para agrupar páginas de resultados e implementar funciones como "Página siguiente" y "Página anterior", se puede utilizar la búsqueda de MongoDB con las opciones searchSequenceToken, searchAfter y searchBefore para recorrer las páginas en orden y saltar entre ellas. Para aprender más, ver Cómo paginar los resultados.

Los siguientes conceptos forman la base de la búsqueda de MongoDB y son esenciales para optimizar la aplicación.

Las consultas de búsqueda consultan un índice de búsqueda para devolver un conjunto de resultados. Las consultas de búsqueda difieren de las consultas tradicionales de bases de datos, ya que satisfacen necesidades de información más generales. Cuando una query a la base de datos debe seguir una sintaxis estricta, puedes utilizar consultas de búsqueda para una simple coincidencia de texto. También puede buscar frases similares, rangos de números o fechas y expresiones regulares o comodines.

Las consultas de búsqueda de MongoDB Search tienen la forma de una etapa del pipeline de agregación. MongoDB Search proporciona las etapas de $search y $searchMeta, que puedes usar junto con otras etapas del pipeline de agregación en tu canalización de consultas. MongoDB Search proporciona operadores del query y colectores que pueden utilizarse dentro de estas etapas del pipeline de agregación.

Para obtener más información, consulta Query e índices.

En el contexto de la búsqueda, un índice es una estructura de datos que categoriza los datos en un formato fácilmente buscable. Los índices de búsqueda permiten una recuperación más rápida de los documentos que contienen un término determinado sin tener que escanear toda la colección. Aunque tanto los índices de búsqueda de MongoDB como los índices de MongoDB aceleran la recuperación de datos, son diferentes. Como el índice al final de un libro, un índice de búsqueda es un mapeo entre términos y los documentos que contienen esos términos. Los índices de búsqueda también contienen otros metadatos relevantes, como las posiciones de los términos en los documentos.

Es posible crear un índice de MongoDB Search en un solo campo o en varios campos usando asignaciones estáticas. Alternativamente, se pueden habilitar las asignaciones dinámicas para indexar automáticamente todos los campos que se pueden indexar dinámicamente en los documentos. Se pueden crear índices de MongoDB Search en datos polimórficos y documentos incrustados, o para casos de uso específicos, como búsqueda mientras se escribe o búsqueda por facetas.

Para obtener más información, consulta Clientes compatibles.

Cuando creas un índice de búsqueda, Atlas Search transforma tus datos en una secuencia de tokens o términos. Un analizador facilita este proceso a través de pasos que incluyen:

  • Tokenización: Separa las palabras en una string en tokens indexables, como dividir una frase por espacios en blanco y signos de puntuación.

  • Normalización: organiza los datos para una representación coherente y un análisis más fácil, como transformar el texto a minúsculas o remover palabras no deseadas llamadas palabras vacías.

  • Lematización: reduce las palabras a su forma raíz al ignorar sufijos, prefijos y formas plurales de palabras.

Los detalles de la tokenización son específicos de cada lenguaje y pueden requerir tomar decisiones adicionales. Qué analizador usar depende de los datos y de la aplicación.

MongoDB Search proporciona algunos analizadores incorporados. También se puede crear analizador personalizado propio. Se puede especificar analizadores alternativos usando el multianalizador.

Para obtener más información, consulta Procesar datos con analizadores.

Cada documento en los resultados de la query recibe una puntuación de relevancia que ordena los resultados de mayor a menor relevancia. En la forma más simple de puntuación, los documentos obtienen una puntuación más alta si el término de query aparece con frecuencia en un documento y más baja si el término de query aparece en muchos documentos de la colección. También puedes personalizar la puntuación para adaptar la búsqueda a un dominio específico mediante el aumento, la disminución o la modificación de la puntuación por defecto basada en la relevancia.

Para obtener más información, consulta Documentos de puntuación.

Para obtener una experiencia práctica en la creación de índices de búsqueda de MongoDB y en la ejecución de consultas de búsqueda de MongoDB con datos de muestra, pruebe el MongoDB búsqueda Quick Start.