Retour à la leçonMission
Mission : diagnostiquer une jointure devenue lente après une migration
Lire un plan EXPLAIN ANALYZE détaillé pour identifier un mauvais choix d'algorithme de jointure causé par des statistiques obsolètes, et proposer une correction.
Contexte
Depuis la migration d'une partie du trafic vers une nouvelle région, la requête qui joint clients et commandes sur co.client_id = c.id est devenue beaucoup plus lente. Le plan EXPLAIN (ANALYZE, BUFFERS) montre un Nested Loop où la boucle interne (Index Scan sur commandes) est exécutée des milliers de fois, et affiche rows=120 en estimation contre actual rows=48000 en réalité sur le Seq Scan de clients. Les deux tables contiennent chacune plusieurs millions de lignes.