IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Oracle Discussion :

Supression de statistiques


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 40
    Par défaut Supression de statistiques
    Bonjour à tous ,

    Je rencontre un problème avec une base décisionnelle que j'ai passé de la 8.1.7 a la 10.2.0.1 le 15/01/2008 : certaines requêtes qui duraient une poignée de secondes durent aujourd'hui 40 minutes. J'ajoute que ce sont des requêtes générées par BO, je n'ai pas le pouvoir de les optimiser .... (malheureusement ... )

    Aprés de multiples recherches, il semblerait que le problème arrive lorsque je calcule les stats avec le code suivant (bêtement repris dans un script d'une base de notre erp)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    connect / as sysdba
    ALTER SESSION SET NLS_NUMERIC_CHARACTERS = '. '; 
    EXECUTE dbms_stats.gather_schema_stats(ownname => '&var', method_opt => 'FOR ALL INDEXED COLUMNS SIZE AUTO', cascade=>TRUE,estimate_percent=>60);
    Avec les 2 tests suivants, je pense avoir déterminé que c'est le "ALTER SESSION SET NLS_NUMERIC_CHARACTERS = '. '; " avant le calcul des stats qui me pose problème :

    TEST 1
    1/ Import des données de la base en 8i vers la base en 10g
    2/ J'execute la requête en question, elle dure 25 secondes
    3/ Je balance le script ci-dessus de calcul des stats en supprimant la ligne "ALTER SESSION ....."
    4/ J'execute la requête en question, 25 secondes

    TEST 2
    1/ Import des données de la base en 8i vers la base en 10g
    2/ J'execute la requête en question, elle dure 25 secondes
    3/ Je balance le script ci-dessus de calcul des stats en gardant la ligne "ALTER SESSION ....."
    4/ J'execute la requête en question, 40 minutes !!!
    5/ J'éxecute le code suivant pour supprimer les stats
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sys.dbms_stats.delete_schema_stats(ownname => 'SPI');
    6/ J'execute la requête en question, 40 minutes !!!
    7/ Je balance le script de calcul des stats en supprimant la ligne "ALTER SESSION ....."
    8/ J'execute la requête en question, 40 minutes !!!

    CONCLUSION
    Dans le test 2 (cas dans lequel est ma base de production), les problèmes surviennent a partir de l'étape 3. Comment me débarasser facilement de qui a été calculé a cette étape ? Sachant que le delete_schema_stats ne fonctionne guère dans mon cas. Pour info, lorsque j'ai éxécuté le delete_schema_stats, j'ai vérifié dans le all_tables >>> plus aucune stat ....

    J'ai délibérement omis de vous envoyer la requête ainsi que les plans de chaque étape, pour garde du recul sur la situation. Si vraiment il y en a besoin, je peux les poster.

    [10:00] J'ajoute en pieces jointes requete et plan (ex : plan_T2E2 = test 2 , etape 2)
    Images attachées Images attachées   
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    en principe un calcul de stat doit rendre le plan obsoléte et le parser le recalcule... mais visiblement là c'est pas le cas. Essaye de redémarrer la base et de refaire un essai.

    Et surtout, plutôt que supprimer les stats il faut réussir à comprendre pourquoi il y a une telle différence. Rappelles nous la requête et les plans d'exécution obtenu à 25s et 40 min.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 40
    Par défaut
    Je viens d'ajouter requête et plans sur le premier post
    Merci !

  4. #4
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    j'imagine que le 1er est moins performant c'est ça ?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 40
    Par défaut
    le premier plan ? beh non puisqu'il me ramène mes lignes en une poignée de secondes !!! Ce sont les stats calculées dans mon dump (export de la 8i)

    Ca me fait penser, il faudrait pê comparer les plans entre TEST1,ETP4 et TEST2, ETP4 puisque c'est a partir de l'étape 3 que tout bascule ....

    je vais vous procurer ces pièces manquantes

  6. #6
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    essaye le hint ORDERED eventuellement

Discussions similaires

  1. Analyseur de code (statistique)
    Par Boons dans le forum Choisir un environnement de développement
    Réponses: 9
    Dernier message: 13/08/2003, 12h22
  2. Confirmation de supression d'enregistrement
    Par Lux interior dans le forum XMLRAD
    Réponses: 3
    Dernier message: 25/04/2003, 16h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo