2. Bases de dades NoSQL

2.11. Agregacions a MongoDB

Per treballar a fons amb els elements d’un array és millor utilitzar el framework aggregation que ens permet MongoDB, moltes opcions i realitzar tubs pipelines per gestionar la informació emmagatzemada.

Operacions d’agregacions

Les operacions d’agregació són eines de MQL que ens ajuden a processar documents i a retornar resultats calculats. Les operacions d’agregació s’utilitzen majoritàriament per:

  • Agrupar valors de diversos documents.
  • Processar i operar per al retorn de resultats.
  • Analitzar canvis de dades al llarg del temps.

Tubs i transformacions

Per realitzar el processament de documents, MongoDB es basa en el patró de filtre de tubs, utilitzat comunament en arquitectures de programari. Aquest patró consta d’una o més etapes, on cada etapa realitza una operació amb les dades d’entrada, i la sortida o resultat l’entrega a la següent etapa per al seu processament.

Per aplicar aquest patró, MongoDB utilitza una sèrie d’operadors ja definits per poder processar documents.

Els operadors més utilizats en tubs:

  • Filtratge de documents amb criteris: $match.
  • Ordre de documents: $sort.
  • Selecció de camps en específic: $project.
  • Agrupació de documents: $group.
  • Treure els elements d’un array: $unwind.

Caldria un altre curs per aprofundir en totes les opcions que ens ofereix MongoDB.