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 :

creation d'un index


Sujet :

Administration Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    152
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juin 2009
    Messages : 152
    Par défaut creation d'un index
    Je souhaiterais optimiser le temps d'exécution d'une requete qui contient un <nom_colonne> in not null

    La semaine dernière, j'ai regardé le plan d'execution de la requête et j'ai detecté un full scan. J'ai donc mis en place un index sur plusieurs colonnes (celles listées dans la requête). Les statistiques de la requête ont montrés une net amélioration

    avant:

    1185 recursive calls
    30 db block gets
    123866 consistent gets
    129050 physical reads
    0 redo size
    3933 bytes sent via SQL*Net to client
    722 bytes received via SQL*Net from client
    3 SQL*Net roundtrips to/from client
    59 sorts (memory)
    1 sorts (disk)
    26 rows processed

    maintenant:

    595 recursive calls
    0 db block gets
    59343 consistent gets
    59090 physical reads
    260 redo size
    1652 bytes sent via SQL*Net to client
    653 bytes received via SQL*Net from client
    2 SQL*Net roundtrips to/from client
    1 sorts (memory)
    0 sorts (disk)
    3 rows processed

    Mais je trouve le consistent gets et le physical read encore trop elevés.

    Puis je refaire l'index afin de mieux prendre en compte le "is not null" ???

    Merci d'avance

  2. #2
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    152
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juin 2009
    Messages : 152
    Par défaut
    Dans le plan d'execution, j'obtiens:

    29 18 INDEX (FAST FULL SCAN) OF 'IDX' (UNIQUE)
    (Cost=4 Card=16386523 Bytes=245797845)

  3. #3
    Expert confirmé
    Avatar de pachot
    Homme Profil pro
    Developer Advocate YugabyteDB
    Inscrit en
    Novembre 2007
    Messages
    1 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Developer Advocate YugabyteDB
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 822
    Billets dans le blog
    1
    Par défaut
    Attention, tes requêtes ne ramènent pas le même résultat:
    avant: 26 rows processed
    maintenant: 3 rows processed

  4. #4
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    152
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juin 2009
    Messages : 152
    Par défaut
    La création d'un index peut changer le résultat de la requete ????

  5. #5
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    152
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juin 2009
    Messages : 152
    Par défaut
    Non C'est bon, j'ai supprimé les index mise en place, relancé la commande et re-mis en place les index. Cela me retourne toujours 3 lignes. Je ne suis pas le seul à travailler sur la base. Je vous rassure c'est une base de dev

    Mais faut pas me faire peur comme ca .

    Voici le resultat obtenu:

    avant:

    Statistics
    ----------------------------------------------------------
    595 recursive calls
    0 db block gets
    185302 consistent gets
    184517 physical reads
    0 redo size
    1652 bytes sent via SQL*Net to client
    651 bytes received via SQL*Net from client
    2 SQL*Net roundtrips to/from client
    1 sorts (memory)
    0 sorts (disk)
    3 rows processed


    apres:
    Statistics
    ----------------------------------------------------------
    595 recursive calls
    0 db block gets
    51759 consistent gets
    51533 physical reads
    0 redo size
    1652 bytes sent via SQL*Net to client
    651 bytes received via SQL*Net from client
    2 SQL*Net roundtrips to/from client
    1 sorts (memory)
    0 sorts (disk)
    3 rows processed


    Voici le FULL SCAN:

    INDEX (FAST FULL SCAN) OF 'IDX' (UNIQUE) (Cost=4 Card=45096 Bytes=2344992)

  6. #6
    Expert confirmé
    Avatar de pachot
    Homme Profil pro
    Developer Advocate YugabyteDB
    Inscrit en
    Novembre 2007
    Messages
    1 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Developer Advocate YugabyteDB
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 822
    Billets dans le blog
    1
    Par défaut
    non. Est-tu sur que c'est la même requête, les mêmes données et les bonnes stats ?

  7. #7
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    152
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juin 2009
    Messages : 152
    Par défaut
    Oui C'est la même requete, (Copier/Coller), les mêmes données (même base, on est que 2 à travailler dessus, en tous cas aujourd'hui).

    Et les bonnes stats ???? C'est à dire ??

    je fais un set autotrace on avant d'executer la requete.

    Le résultats avec les 26 lignes datait de la semaine dernière au matin.

    Les stats vous semblent suspect ??

Discussions similaires

  1. creation d'un index
    Par Msysteme dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 09/03/2010, 11h16
  2. operation de trie dé la creation d un index
    Par othman_k86 dans le forum Administration
    Réponses: 1
    Dernier message: 17/10/2007, 12h21
  3. [MCD]Creation d'un index
    Par VIRGINIE87 dans le forum Modélisation
    Réponses: 4
    Dernier message: 07/04/2007, 11h06
  4. Creation d'un index sous Access
    Par germaneau dans le forum Access
    Réponses: 3
    Dernier message: 18/08/2006, 14h11
  5. creation d'un index mdx
    Par etienne.bo dans le forum Bases de données
    Réponses: 5
    Dernier message: 03/07/2006, 11h28

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