Problème N+1

Le problème N+1 se produit quand une application exécute une requête pour la liste, puis une requête par ligne pour des données associées, ce qui multiplie les allers-retours vers la base. On le corrige par une jointure, un chargement groupé (WHERE id = ANY(...)) ou le préchargement de l'ORM. pg_stat_statements aide à le repérer.

Exemple

SELECT * FROM commandes WHERE client_id = ANY(ARRAY[1, 2, 3]);

Notions voisines

Tout le glossaire