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

Administration Oracle Discussion :

EXPLAIN PLAN : limitations?


Sujet :

Administration Oracle

  1. #1
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    1 993
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 1 993
    Points : 2 499
    Points
    2 499
    Par défaut EXPLAIN PLAN : limitations?
    Salut les DBA

    Je viens vers vous pour avoir votre retour d'expérience sur les limitations sur la commande EXPLAIN PLAN.

    Cette commande permet d'avoir immédiatement un plan d'exécution MAIS il y a toujours un prix à payer. Il existe notamment un pb sur les bind variables (toujours considérées comme VARCHAR2 et sélectivité non prise en compte).
    C'est expliqué ici mais la doc Oracle est succinte : https://docs.oracle.com/database/121...htm#TGSQL94701
    "EXPLAIN PLAN Restrictions
    Oracle Database does not support EXPLAIN PLAN for statements performing implicit type conversion of date bind variables. With bind variables in general, the EXPLAIN PLAN output might not represent the real execution plan."

    J'avais fait des tests ici sur mon blog : http://dbaoraclesql.canalblog.com/ar.../36654261.html
    et effectivement, la sélectivité des bind variables n'est pas prise en compte par la commande EXPLAIN PLAN.

    Maintenant, est-ce que selon vous il existe d'AUTRES limitations?
    DBA Oracle
    Rédacteur du blog : dbaoraclesql.canalblog.com

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 820
    Points
    17 820
    Par défaut
    Une limitation plus visuelle que fonctionnelle c'est la verbosité du plan d'exécution lorsque le parallélisme est activé, ça multiplie par deux ou trois sa longueur.
    Pas de soucis sur des petites requêtes, mais avec dix/douze tables ça devient fichtrement compliqué de suivre.

    Je force donc les explains en /*+ NOPARALLEL */ et les requêtes avec le parallélisme.

  3. #3
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    1 993
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 1 993
    Points : 2 499
    Points
    2 499
    Par défaut
    Merci Waldar
    DBA Oracle
    Rédacteur du blog : dbaoraclesql.canalblog.com

  4. #4
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 936
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 936
    Points : 4 356
    Points
    4 356
    Par défaut
    Explain plan ne renvoit qu’une estimation théorique c’est display cursor qui retourne le plan réellement utilisé

  5. #5
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    1 993
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 1 993
    Points : 2 499
    Points
    2 499
    Par défaut
    Citation Envoyé par JeitEmgie Voir le message
    Explain plan ne renvoit qu’une estimation théorique c’est display cursor qui retourne le plan réellement utilisé
    Je suis entièrement d'accord avec toi mais quand tu tunes un ordre SQL, tu ne vas pas attendre une heure pour savoir si le nouvel index est bien utilisé.
    Je fais donc un EXPLAIN PLAN pour dégrossir le tuning, trouver des pistes d'amélioration puis, à la fin, j'exécute réellement la requête pour être sur que mes pistes sont OK.
    DBA Oracle
    Rédacteur du blog : dbaoraclesql.canalblog.com

Discussions similaires

  1. Explain Plan
    Par claralavraie dans le forum Oracle
    Réponses: 28
    Dernier message: 22/05/2006, 17h52
  2. Oracle9i explain plan for
    Par mohmanjdo dans le forum Oracle
    Réponses: 1
    Dernier message: 12/05/2006, 06h12
  3. [9.2] Explain Plan
    Par nako dans le forum Oracle
    Réponses: 9
    Dernier message: 09/01/2006, 10h52
  4. TKPROF et Explain Plan
    Par kamalito dans le forum Oracle
    Réponses: 7
    Dernier message: 27/10/2005, 11h54
  5. Réponses: 13
    Dernier message: 23/06/2005, 10h56

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