Contenido del curso
Operaciones básicas
Etapas de Aggregation Framework
Operaciones avanzadas
Performance y optimización
Próximos pasos
Qué es MongoDB Aggregation Framework
Resumen
Si necesitas responder preguntas estratégicas sobre grandes volúmenes de datos en MongoDB, el Aggregation Framework es la herramienta indicada. Funciona como una cadena de montaje donde cada etapa filtra, transforma y prepara la información para entregar resultados listos para decisiones de negocio.
Por qué usar MongoDB Aggregation Framework para consultas complejas
MongoDB destaca por la flexibilidad de sus documentos: puedes anidar objetos dentro de objetos e incluir arrays. Esa libertad trae un reto, porque consultar información cuando los datos están distribuidos en estructuras complejas exige más que un find simple.
Ahí entra el Aggregation Framework. Te permite responder preguntas reales del negocio, como el comportamiento de ventas del último semestre de tu e-commerce o qué patrones siguen tus mejores compradores [00:30].
¿Qué es MongoDB Aggregation Framework? Es un sistema de procesamiento de datos basado en pipelines, donde cada etapa filtra o transforma documentos hasta entregar el resultado final que necesitas.
Cómo funciona el pipeline en MongoDB
Un pipeline es una tubería por donde fluyen los datos de una etapa a otra. Piénsalo como una cadena de montaje de automóviles: cada estación tiene una función específica que prepara la pieza para el siguiente paso [01:15].
Cada etapa cumple un rol concreto:
- Filtrar documentos según un criterio.
- Transformar la estructura de los datos.
- Agrupar y calcular métricas.
- Ordenar y dar forma al resultado final.
Si ya manejas el Query Language estándar de MongoDB, la sintaxis te resultará familiar. La mayoría de los operadores que conoces se reutilizan dentro del Aggregation Framework [01:50].
Cómo construir un pipeline paso a paso con un caso real
Imagina una base de datos de ventas con datos del comprador, su nombre, edad y el canal usado para comprar. La gerencia comercial pide segmentar usuarios para una nueva campaña de marketing: necesitan la media de edad por canal de compra, ordenada por edad y restringida a la sucursal de Londres [02:40].
Resolverlo requiere encadenar cuatro etapas.
Cómo filtrar datos con el operador match
La primera etapa usa $match, que genera un subconjunto según el criterio que indiques. Aquí filtramos por el campo store location para quedarnos solo con los registros de Londres.
Esta etapa reduce el universo de documentos antes de cualquier cálculo, lo que mejora el rendimiento del pipeline.
Cómo agrupar y calcular promedios con group
La segunda etapa es $group. Su configuración más importante es el _id, el campo sobre el que se realiza la agrupación. En este caso, agrupamos por el canal de compra (online, teléfono o presencial) [04:10].
Dentro del mismo $group definimos un campo nuevo que almacene el cálculo de la media de edad, usando el operador de promedio sobre el campo de edad del comprador.
¿Para qué sirve el operador $group? Acumula documentos por un campo común y permite aplicar cálculos como promedio, suma o conteo sobre cada grupo formado.
Cómo dar forma al resultado con project y sort
La tercera etapa es $project, que define qué campos mostrar y cómo. Reemplazamos el _id crudo por un campo llamado método con el identificador del grupo, y añadimos otro campo con la media de edad redondeada [05:30].
La cuarta y última etapa es $sort, que ordena el resultado por el campo de media de edad según el criterio que definas (ascendente o descendente).
Al ejecutar el pipeline, obtienes exactamente lo pedido: tres grupos (online, teléfono y presencial) con su media de edad, ordenados y filtrados por Londres. Pocas líneas de código, un resultado listo para enviar al equipo comercial.
Qué necesitas saber antes de profundizar en Aggregation Framework
Durante el curso usaremos un pack de demo de MongoDB Atlas que incluye varias bases de datos de muestra, entre ellas una de Airbnb que servirá de laboratorio para experimentar con cada etapa del framework [06:50].
Para aprovechar al máximo lo que viene, conviene tener bases firmes:
- Conocimientos de bases de datos no relacionales.
- Manejo de colecciones en MongoDB.
- Familiaridad con el formato JSON.
Si nunca trabajaste con MongoDB, el curso de introducción a MongoDB de Platzi es el punto de partida. Si ya tienes experiencia y quieres reforzar conceptos puntuales, hay una lista de recursos disponibles para consulta directa.
Tu guía es Carlos Olivera Terrazas, arquitecto en soluciones de software con más de 20 años de experiencia y actual CTO de la startup Mob Latin. ¿Listo para construir tu primer pipeline? Cuéntame en los comentarios qué pregunta de negocio quieres resolver con Aggregation Framework.