El asistente inteligente es una herramienta basada en IA diseñada para integrar el desarrollo de MongoDB en Data Explorer. Responde preguntas en lenguaje natural, ayuda a depurar errores y ofrece orientación para optimizar el rendimiento.
Activar las funciones de IA
Para utilizar el asistente inteligente en Data Explorer, primero habilite las funciones de IA en la configuración.
A nivel organizacional:
En Atlas, vaya a la Organization Settings página.
Si aún no se muestra, selecciona la organización deseada en el menú Organizations de la barra de navegación.
En la barra lateral, haga clic en Organization Settings.
El Se muestra la páginaConfiguración de la organización.
A nivel de proyecto:
En Atlas, diríjase a la página Project Settings.
Si aún no se muestra, seleccione la organización que contiene su proyecto deseado en el menú Organizations de la barra de navegación.
Si aún no aparece, selecciona el proyecto deseado en el menú Projects de la barra de navegación.
En la barra lateral, haga clic en Project Settings.
La página Configuración del proyecto se muestra.
Acceda al Asistente Inteligente
Para acceder al asistente inteligente:
En Atlas, ve a la página Data Explorer de tu proyecto.
Si aún no aparece, se debe seleccionar la organización que contiene el proyecto en el menú Organizations de la barra de navegación.
Si aún no se muestra, seleccione su proyecto en el menú Projects de la barra de navegación.
En la barra lateral, haz clic en Data Explorer en la sección Database.
El Data Explorer se muestra.

Figura 1. Página de inicio de Data Explorer con el asistente contraído.

Figura 2. La página de inicio de Data Explorer con el asistente expandido.
Herramientas de solo lectura
Las herramientas de solo lectura del asistente del Explorador de Datos extraen el contexto de la tarea actual o ejecutan operaciones de base de datos en la implementación de MongoDB conectada con aprobación humana. A diferencia de las respuestas conversacionales, estas herramientas pueden realizar consultas reales a la base de datos y devolver datos en tiempo real de la misma.
Las herramientas de asistencia presentan las siguientes características clave:
Solo lectura: las herramientas no pueden modificar, insertar, actualizar ni eliminar datos.
Aprobado por el usuario: cada ejecución de la herramienta requiere la confirmación explícita del usuario.
Contextual: El asistente tiene en cuenta su base de datos, colección y conexión actuales al momento de decidir llamar a las herramientas.
Datos en vivo: los resultados provienen de su implementación de MongoDB conectada en tiempo real.
Herramientas del explorador de datos
Las siguientes herramientas obtienen información confidencial para los usuarios y requieren confirmación. Estas herramientas no interactúan con la base de datos, pero requieren la confirmación del usuario antes de usarlas:
Nombre de la herramienta Explorador de datos | Descripción |
|---|---|
| Extrae los parámetros de consulta activos de MongoDB de la barra de consultas |
| Extrae la canalización de agregación activa del generador de agregación |
Database Tools
Nombre de la herramienta de base de datos | Descripción |
|---|---|
| Muestra todas las bases de datos disponibles en su implementación de MongoDB con sus tamaños de almacenamiento. |
| Muestra todas las colecciones dentro de una base de datos específica. |
| Recupera documentos reales de una colección que coinciden con criterios de búsqueda específicos. |
| Devuelve rápidamente el número total de documentos en una colección sin recuperar los propios documentos. |
| Realiza operaciones complejas de procesamiento de datos, como agrupar, filtrar, transformar y calcular estadísticas en documentos. |
| Enumera todos los índices definidos en una colección. |
| Analiza una colección para revelar la estructura de los documentos, incluidos los nombres de campo y los tipos de datos. |
| Informa el espacio de disco físico ocupado por una colección, incluidos datos e índices. |
| Proporciona una descripción general completa del estado de la base de datos, incluidos recuentos de colecciones, totales de documentos, uso de almacenamiento y estadísticas de índice. |
| Recupera registros recientes del servidor para solucionar problemas, supervisar el rendimiento y realizar auditorías de seguridad. |
| Muestra el plan detallado de ejecución de consultas y las estadísticas de rendimiento, revelando cómo MongoDB procesa una consulta y si utiliza índices. |
Nota
Las etapas $out y $merge de la canalización de agregación no se admiten en la llamada a herramientas porque realizan operaciones de escritura. El asistente solo admite herramientas de solo lectura.
Ejemplo de flujo
Revisar la tarjeta de herramientas
El asistente detecta su intención y muestra una tarjeta de herramienta pendiente. Esta lista enumera los posibles elementos que puede mostrar la tarjeta de herramienta:
Operación del nombre de la herramienta
Implementación (host/punto final)
Base de datos y colección que se están consultando
Cualquier parámetro o filtro
Run y botones Cancel
Para el ejemplo anterior, la tarjeta de herramientas muestra "lista-bases-de-datos".
Ejemplos
Los siguientes escenarios muestran varios usos del asistente inteligente en Data Explorer.
Explicar el plan
Pídale al asistente inteligente que analice la salida de su consulta MongoDB Compass:
Interpret this explain plan for me.
## Summary - **Query Logic:** This pipeline counts the number of Italian restaurants in Manhattan by first filtering documents and then aggregating the count. - **Performance:** Fair - **Recommendations:** Create a compound index on `{ borough: 1, cuisine: 1 }` to optimize document retrieval. ## Details ### Query Logic 1. `$match`: Filters documents where `borough` is "Manhattan" and `cuisine` is "Italian". 2. `$count`: Counts the number of documents matching the filter and outputs the total. ### Performance Analysis - The winning plan uses an index scan on the `cuisine` field (`cuisine_1`) and applies an in-memory filter for `borough` ("Manhattan"). - Both `totalKeysExamined` and `totalDocsExamined` are high (43,207), which implies that every document with `cuisine: "Italian"` is examined and then filtered by `borough`. - No compound index exists, meaning MongoDB cannot efficiently combine both filter criteria in a single index lookup. - The pipeline does properly filter before counting, but index usage is only partial, causing increased resource usage. ### Recommendations - Create a compound index on `{ borough: 1, cuisine: 1 }` to allow MongoDB to retrieve documents matching both criteria directly from the index, minimizing documents examined. - This optimization will reduce execution time and system load without changing the output of your aggregation pipeline. Below is the recommended Aggregation Pipeline. This optimized Aggregation Pipeline will leverage the compound index to scan fewer documents, as both filter criteria are present in the index. ```json [ { "$match": { "borough": "Manhattan", "cuisine": "Italian" } }, { "$count": "totalItalianRestaurants" } ] ``` ### Follow-Up Questions 1. How do I create a compound index in MongoDB Compass or via a shell command? 2. What other fields should I consider adding to my indexes for restaurant lookups? 3. How can I further optimize aggregations when working with larger datasets?
Preguntas de los usuarios
Los siguientes ejemplos demuestran preguntas que puede hacerle al asistente inteligente sobre las funciones y consultas de Data Explorer.
How is MongoDB data modeling different from data modeling with a relational database?
MongoDB data modeling differs from relational database (RDBMS) data modeling in some important ways: 1. Document-Oriented vs. Table-Oriented - MongoDB stores data as flexible, hierarchical JSON-like documents. - Relational databases use tables with fixed schemas and columns. 2. Schema Flexibility - In MongoDB, collections can contain documents with different structures. Schema enforcement is optional. - RDBMS tables have a strict schema that enforces data types and relationships. 3. Embedding vs. Normalization - MongoDB encourages embedding related data inside documents when appropriate (denormalization). Example: An order document may include an array of items directly inside it. - Relational databases emphasize normalization—splitting data across tables connected by foreign keys. 4. Relationships - MongoDB does support references between documents (similar to foreign keys), but joins are less central and not as efficient as in RDBMS. - RDBMSs use normalized data and JOIN operations to relate tables efficiently. 5. Performance & Scaling - MongoDB’s data model enables horizontal scaling (sharding), making it well-suited for large, distributed datasets. - RDBMS scaling typically relies on vertical scaling or complex clustering; JOINs can become expensive as data grows. 6. Use Cases and Design Philosophy - MongoDB models are often designed to optimize common query patterns, reducing the need for joins and complex queries. - RDBMS models are designed for transactional consistency and for representing organized, well-structured relationships. In summary, MongoDB encourages a more flexible, application-driven approach to modeling, while relational databases rely on rigid schemas and normalized relationships. Compass provides tools to visually explore your document structures and relationships, which can be especially helpful as your model evolves.
How can I combine multiple conditions in a single $search query?
To combine multiple conditions in a single $search query in MongoDB Atlas Search (including Compass), you should use the compound operator. The compound operator allows you to specify multiple criteria using must, mustNot, filter, and should clauses. Example: Combine Multiple Conditions Suppose you want to: - Match documents where the plot field contains "baseball" - Exclude documents where the genres field contains "Comedy" or "Romance" Your $search stage would look like this: { "$search": { "compound": { "must": [ { "text": { "query": "baseball", "path": "plot" } } ], "mustNot": [ { "text": { "query": ["Comedy", "Romance"], "path": "genres" } } ] } } }