Salut Sofiane, merci pour cet article super clair ! L'analogie avec la magie fonctionne très bien pour démystifier ces concepts qui peuvent vite devenir de vrais casse-têtes quand on commence à empiler les pipelines d'agrégation.
Au quotidien, je réalise pas mal d'audits techniques pour l'optimisation des architectures web, et je remarque souvent que les problèmes de lenteur serveur (qui plombent le fameux TTFB) proviennent justement de requêtes de bases de données mal structurées. Le fait de bien maîtriser le combo $unwind et $lookup permet d'éviter de ramener trop de datas brutes et de faire des boucles coûteuses côté backend, en laissant MongoDB faire le gros du travail intelligemment.
Petite question au passage : as-tu déjà expérimenté des goulots d'étranglement avec $lookup sur de très grosses collections ? Si oui, as-tu des astuces particulières (comme l'utilisation d'index spécifiques sur les champs locaux/étrangers) pour maintenir de bonnes performances de réponse ?
Super partage en tout cas, hâte de lire tes prochains posts !