Bonjour,
je tente d'optimiser certaines requêtes d'un programme.
Pour ce faire j'ai récupéré le sql et je "joue" sur les jointures, vues et autres afin de tester la performance.
Je me base sur les temps d'exécution (je suis seul sur le serveur) et sur les plans d'exécutions.
Mais ces derniers m'étonnent un peu. Via toad on récupère donc cost, cardinality et bytes.
Je me disais que le cost correspondait au coût et que donc mieux valait avoir un cost le plus faible possible.
Pourtant, j'ai par ex une requête ayant pour cost 9000 qui met 11min.
Alors que la "même" requête agencée différemment mais renvoyant bien exactement les mêmes résultats, ayant un cost de 15 000 ne met que 45sec.
Une bonne âme pour m'explique le pourquoi??
Merci d'avance!!
Partager