Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

Pipeline de agregación

Una pipeline de agregación consta de una o más etapas que procesan documentos:

  • Cada etapa realiza una operación sobre los documentos de entrada. Por ejemplo, una etapa puede filtrar documentos, agrupar documentos y calcular valores.

  • Los documentos que se generan en una etapa se pasan a la siguiente etapa.

  • Una pipeline de agregación puede devolver resultados para grupos de documentos. Por ejemplo, devuelve los valores totales, promedio, máximos y mínimos.

Puedes actualizar documentos con una pipeline de agregación si utilizas las etapas mostradas en Actualizaciones con pipeline de agregación.

Nota

Las pipelines de agregación que se ejecutan con el método db.collection.aggregate() no modifican los documentos en una colección, a menos que la pipeline contenga una etapa $merge o $out.

Cuando ejecutas pipelines de agregación en las implementaciones de MongoDB Atlas en la interfaz de usuario de MongoDB Atlas, puedes consultar una vista previa de los resultados en cada etapa.

La sección Complete pipeline de agregación Tutorials contiene tutoriales paso a paso para tareas comunes de agregación, con ejemplos para MongoDB Shell y cada uno de los drivers oficiales de MongoDB.

Para ejecutar una canalización de agregación, utilice:

Una pipeline de agregación consta de una o más etapas que procesan documentos:

  • Una etapa no necesita emitir un documento por cada documento de entrada. Algunas etapas producen nuevos documentos o filtran documentos.

  • La misma etapa puede aparecer varias veces en una pipeline, excepto para $out, $merge y $geoNear.

Para ver todas las etapas de agregación, consulta Etapas de agregación.

En los pipeline de agregación, las expresiones definen cómo la etapa procesa cada documento de entrada en el pipeline. Por ejemplo, las expresiones pueden definir qué documentos incluir, cómo remodelar los campos o cómo calcular nuevos valores.

Algunas etapas de la canalización de agregación aceptan expresiones. Los operadores calculan valores basándose en las expresiones de entrada.

En el lenguaje del query de MongoDB, puedes crear expresiones a partir de los siguientes componentes:

Componente
Ejemplo

Constantes

3

Operadores

Expresiones de ruta de campo

"$<path.to.field>"

Por ejemplo, { $add: [ 3, "$inventory.total" ] } es una expresión que consta del operador $add y dos operandos:

La expresión devuelve el resultado de sumar 3 al valor en la ruta inventory.total del documento de entrada.

Las expresiones de ruta de campo acceden a los campos en los documentos de entrada. Anteponer al nombre del campo un signo de dólar $. Por ejemplo, "$user" hace referencia al campo user, y "$user.name" hace referencia al campo incrustado user.name.

Para más ejemplos, consulte Rutas de campo.

Para actualizar documentos con una canalización de agregación, utilice:

Para límites en los tipos de valores y el tamaño de los resultados, consulta Límites del pipeline de agregación.

Los pipelines de agregación admiten operaciones en colecciones fragmentadas. Consulte Pipeline de agregación and Sharded Collections.

Importante

Pipelines de agregación como alternativa de map-reduce

A partir de MongoDB 5.0, map-reduce está obsoleto.

Para ejemplos de alternativas de pipeline de agregación a map-reduce, consulte:

Para obtener más información sobre las pipelines de agregación, consulta: