Bonjour,
J'ai deux bases de données similaires tournant une sur Oracle 9i R2 et l'autre Oracle 10g.
Le temps d'exécution de certaines requêtes est réduit significativement en Oracle 10. Quel est la différence principale dans les optimiseurs Oracle qui peut permettre cette réduction de 1800secondes (soit 30 minutes) à 45 secondes environ.
J'ai forcé le hint à ALL_ROWS pour récupérer l'ensemble des informations sur la requête identique.
Le coût estimé sur Oracle 9 est 23109332548540000 alors que sur Oracle 10, il est 26778.
J'ai déjà remarqué que dans le plan d'exécution, presque tous les MERGEJOIN et SORT JOIN sont remplacés par Nested Loops sur Oracle 10.
De plus, j'ai un optimiseur ANALYZED sur pas mal des lignes du plan d'exécution, cela correspond à quoi au juste.
Merci d'avance de vos éclaircissements.
Partager