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 :

Comment les stats ont été calculées ?


Sujet :

Oracle

  1. #1
    Membre régulier
    Homme Profil pro
    Consultant
    Inscrit en
    Mai 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant

    Informations forums :
    Inscription : Mai 2006
    Messages : 147
    Points : 88
    Points
    88
    Par défaut Comment les stats ont été calculées ?
    Bonjour,
    Je débarque sur un site où les statistiques sont calculées sur les objets d'une base oracle 11g.
    Ma question : comment je peux savoir avec quels valeurs des paramètres du package DBMS_STATS ont été calculées ces statistiques ( compute , estimate_percent , granularity , degree …) ?
    Merci

  2. #2
    Expert éminent sénior Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Points : 11 252
    Points
    11 252
    Par défaut
    Regardez le package DBMS_STATS dans la doc d'Oracle.

  3. #3
    Membre régulier
    Homme Profil pro
    Consultant
    Inscrit en
    Mai 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant

    Informations forums :
    Inscription : Mai 2006
    Messages : 147
    Points : 88
    Points
    88
    Par défaut
    Bonjour Mnitu
    Ma question n'était pas sur comment calculer les stats avec le Package DBMS_STATS.

    Je m'exprime autrement :

    Si stats calculés sur des objets Oracle comment deviner avec quelles valeurs des paramètres du DBMS_STATS elles étaient calculées.
    Merci.

  4. #4
    Expert éminent sénior Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Points : 11 252
    Points
    11 252
    Par défaut
    Citation Envoyé par devkais Voir le message
    ...
    Ma question n'était pas sur comment calculer les stats avec le Package DBMS_STATS.

    ...
    Bonjour,

    Avez-vous jeté un œil sur le package DBMS_STATS ?

    Bref, vous calculez les statistiques via le package dbms_stats qui a des valeurs par default. Ces valeurs peuvent être changées via des appels à divers procédures et fonction du package dbms_stats. Les valeurs utilisées pour calculer les statistiques sont disponible via des appels à des autres fonctions du package dbms_stats.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    Connected to Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 
    Connected as mni
     
    SQL> 
    SQL> Select DBMS_STATS.GET_PREFS('ESTIMATE_PERCENT',USER,'EMP')
      2    from dual
      3  /
     
    DBMS_STATS.GET_PREFS('ESTIMATE
    --------------------------------------------------------------------------------
    DBMS_STATS.AUTO_SAMPLE_SIZE
    SQL> Exec dbms_stats.set_table_prefs(USER, 'EMP', 'ESTIMATE_PERCENT', 15)
     
    PL/SQL procedure successfully completed
    SQL> Exec dbms_stats.gather_table_stats(USER, 'EMP');
     
    PL/SQL procedure successfully completed
    SQL> Select DBMS_STATS.GET_PREFS('ESTIMATE_PERCENT',USER,'EMP')
      2    from dual
      3  /
     
    DBMS_STATS.GET_PREFS('ESTIMATE
    --------------------------------------------------------------------------------
    15
     
    SQL> 
    SQL> Select DBMS_STATS.GET_PREFS('ESTIMATE_PERCENT')
      2    from dual
      3  /
     
    DBMS_STATS.GET_PREFS('ESTIMATE
    --------------------------------------------------------------------------------
    DBMS_STATS.AUTO_SAMPLE_SIZE
     
    SQL>
    Et vous disposez également des vues vous donnant des informations sur l’historique des opérations de calcul des statistiques: DBA_OPTSTAT_OPERATIONS et *_TAB_STATS_HISTORY

  5. #5
    Membre régulier
    Homme Profil pro
    Consultant
    Inscrit en
    Mai 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant

    Informations forums :
    Inscription : Mai 2006
    Messages : 147
    Points : 88
    Points
    88
    Par défaut OK
    Merci Mnitu.
    Réponse claire et précise.

    En effet j'avais pensé que GET_PREFS concerne que les stats par défaut au niveau global uniquement.
    Or je découvre grâce à vous qu'on peut l'appliquer sur un objet pour retourner la valeur du paramètre statistique fixé sur cette objet.

    Je vote + et je clôture la discussion !

    Merci encore une fois et à bientôt dans un autre sujet

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 07/02/2009, 16h35
  2. Réponses: 4
    Dernier message: 11/11/2008, 15h18
  3. Comment sont calculées les "visites" dans les stats ?
    Par Christophe Charron dans le forum Général Conception Web
    Réponses: 0
    Dernier message: 29/02/2008, 07h43
  4. [Fait]Comment savoir si les contrôles ont été remplies
    Par Invité dans le forum Contribuez
    Réponses: 0
    Dernier message: 12/09/2007, 12h02
  5. Réponses: 4
    Dernier message: 07/06/2007, 15h33

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