2. Bases de datos NoSQL

2.11. Agregaciones en MongoDB

Para trabajar a fondo con los elementos de un array es mejor utilizar el framework aggregation que nos permite MongoDB muchas opciones y realizar tuberías pipelines para gestionar la información almacenada.

Operaciones de agregaciones

Las operaciones de agregación son herramientas de MQL que nos ayudan a procesar documentos y a retornar resultados calculados. Las operaciones de agregación se utilizan mayoritariamente para:

  • Agrupar valores de varios documentos.
  • Procesamiento y operaciones para el retorno de resultados.
  • Analizar cambios de datos a lo largo del tiempo.

Tuberías y transformaciones

Para realizar el procesamiento de documentos, MongoDB se basa en el patrón de filtro de tubería, utilizado comúnmente en arquitecturas de software. Este patrón consta de una o más etapas, en donde cada etapa efectúa una operación con los datos de entrada, y la salida o resultado se la entrega a la siguiente etapa para su procesamiento.

Para aplicar este patrón, MongoDB utiliza una serie de operadores ya definidos para poder procesar documentos.

Los operadores más utilizados en tuberías:

  • Filtrado de documentos con criterios: $match.
  • Orden de documentos: $sort.
  • Selección de campos en específico: $project.
  • Agrupación de documentos: $group.
  • Sacar los elementos de un array: $unwind.

Sería necesario otro curso para profundizar en todas las opciones que nos ofrece MongoDB.