♥ 3
⚡ 0
MongoDB · Lección 08

¿Cómo se escribe un pipeline de agregación eficiente?

$lookup es equivalente a un join relacional optimizado y se recomienda usarlo en todas las consultas en lugar de incrustar o desnormalizar datos
Procesa documentos por etapas ($match, $group, $sort, $lookup…); conviene poner $match y $project al principio para reducir datos y poder usar índices, las etapas bloqueantes tienen límite de memoria (100 MB) y pueden necesitar allowDiskUse según la versión, y $lookup necesita un índice en el campo de la colección unida
Las etapas como $group o $sort no tienen ningún límite de memoria y nunca necesitan escribir a disco, sea cual sea el tamaño de los datos
El orden de las etapas no importa: el optimizador siempre reordena el pipeline y es igual de eficiente poner $match al final que al principio
MongoDB · Lección 08

Completa el código

La etapa que filtra documentos al inicio del pipeline es $
MongoDB · Lección 08

¿Por qué poner $match al principio del pipeline mejora el rendimiento?

✓

¡Lección completada!

Pipeline de agregación

0
XP ganado
3
Vidas restantes