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 :

ANALYSE TABLE compute statistics


Sujet :

Administration Oracle

  1. #1
    Membre confirmé
    Homme Profil pro
    Consultant Décisionnel
    Inscrit en
    Janvier 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant Décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2012
    Messages : 128
    Par défaut ANALYSE TABLE compute statistics
    Bonjour à tous,

    Je me retrouve face à une problématique de performance,

    J'ai des Analyse table compute statistics qui prennent pas mal de temps,

    Je ne suis pas sûr de bien comprendre l'utilité de cette fonction oracle?


    Ça sert uniquement à récolter des stats sur les tables?


    Merci d'avance.

  2. #2
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 209
    Billets dans le blog
    52
    Par défaut
    Ces statistiques sont utilisées par Oracle pour son paramétrage.
    D'après ce que j'en ai compris, il n'est pas nécessaire de faire les statistiques tous les jours. Si la table ne change pas ou n’évolue pas énormément par rapport à sa volumétrie.
    Cependant, le mieux reste de lire la documentation : DBMS_STATS

    Cordialement,
    Patrick Kolodziejczyk.
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  3. #3
    Membre éprouvé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2015
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2015
    Messages : 49
    Par défaut
    Les statistiques restent cruciales pour l'optimizer Oracle pour trouver le meilleur plan d’exécution des requetes . Si on n'a pas une politique de collecte de stats 'fait maison' (ce qui requiert une bonne connaissance de son application et de l'utilisation qu'on fait de la base), on peut comme un minimum se fier a la collecte automatique des stats ( faite durant la fenêtre de maintenance, et qui d'ailleurs sélectionne les tables candidates selon leurs taux de modifications , je pense que son algorithme se base sur dba_tab_modifications pour trouver les tables candidates)

  4. #4
    Membre confirmé
    Homme Profil pro
    Consultant Décisionnel
    Inscrit en
    Janvier 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant Décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2012
    Messages : 128
    Par défaut
    Merci de vos réponse,

    J'ai enfin eu le temps de regarder un peu plus le sujet, mais je ne comprends pas comment consulter ces stats via une select ... FROM tablesystème ? (Est-ce possible?)

    Ou uniquement Oracle peut les utiliser pour choisir au mieux son plan d’exécution?

    Car pour l'instant ce que je vois dans la doc Oracle ce sont des procédures Stockées système qui vont remplir des tables(?) pour l'utilisation perso d'Oracle!

  5. #5
    Membre éprouvé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2015
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2015
    Messages : 49
    Par défaut
    Bonjour,
    Je n'ai pas eu le temps de revenir vers la documentation, mais ce que je peux dire c'est que on peut voir dans dba_tables , la colonne LAST_ANALYZED pour savoir a quand remonte la dernière fois que les statistiques ont été collectées (avec une commande analyze table ou EXEC DBMS_STATS.gather_table_stats('OWNER', 'nom_de_ma_table');
    Aussi , la collecte de stats met a jour les colonnes suivantes dans dba_tables :
    num_rows : si la valeur ne reflète pas le nombre réel de lignes avec une très grande différence, (qu'on peut tester avec un simple select count(*) from nom_de_ma_table ) , c'est que les stats ne sont pas a jour.
    Aussi :
    CHAIN_CNT*
    AVG_ROW_LEN*

  6. #6
    Expert confirmé 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
    Par défaut
    Citation Envoyé par BIOoOAG Voir le message
    ...
    J'ai des Analyse table compute statistics qui prennent pas mal de temps
    ...
    Cette commande apparue en version 7(.3?) a été dépréciée à partir de la version 9 d'Oracle étant remplacée par le package DBMS_STATS.
    Divers vues du méta-dictionnaire expose des informations concernant les statistiques collectées lors de l'analyse des données mais également celle de la machine (statistiques système).

Discussions similaires

  1. Réponses: 22
    Dernier message: 28/04/2006, 10h58
  2. Performances : ANALYSE TABLE, quelle fréquence ?
    Par Mr N. dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 26/10/2005, 17h02
  3. Réponses: 3
    Dernier message: 21/10/2005, 14h56
  4. Réponses: 5
    Dernier message: 20/10/2005, 10h42
  5. script d'analyse oracle : compute statistic
    Par davidudy dans le forum Administration
    Réponses: 7
    Dernier message: 05/08/2004, 15h00

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