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 :

Index monocolonne vs composite [8i]


Sujet :

Administration Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Septembre 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 26
    Par défaut Index monocolonne vs composite
    Bonjour les amis
    J'utilise encore en ce moment une base oracle 8i, nous sommes en-train de migrer vers d'autres bases

    j'ai une question qui me chagrine vraiment il y a peu de temps, j'ai une table avec 6M d'enregistrement

    en comparant deux index mono-colonne et index composite qui a comme première colonne la colonne du mono-colonne, lorsque j'exécute une requête qui n'utilise que la colonne indexé comme clause "where", c'est l'index composite que l'optimiseur choisi

    La colonne a une sélectivité de 0,0015152157 (très faible à mon avis)

    vous pouvez m'expliquer, s'il vous plait, pourquoi cette choix?

  2. #2
    Membre actif
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Septembre 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 26
    Par défaut
    j'ai trouvé la raison:
    je ne sais pas pour les autres version, mais en oracle 8i, la colonne sélectionner peux influencer l'optimiseur sur l'utilisation d'un index

    c'est à dire,
    select * from test where id_test = 12
    et
    select col1, col2 from test where id_test = 12

    est différent selon l'optimiseur
    si la table a deux index:

    create index idx_test1 on test(id_test);
    create index idx_test2 on test(id_test, col1, col2);

    pour la première requête, l'optimiseur choisira idx_test1 tandis que pour la seconde requête, il choisira idx_test2

  3. #3
    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
    C’est normal parce que la réponse à le deuxième requête peut être donnée en visitant que l’index pendant que pour la première les deux indexes impliquent aussi la visite de la table. Mais d’une manière générale évitez de créer des indexes redondants.

    PS. Pour des questions similaires il est toujours important d’ajouter les valeurs des divers paramètres de l’optimiseur ainsi que précisions sur le calcul des statistiques des données et les requêtes avec leurs plans d’exécution.

  4. #4
    Membre actif
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Septembre 2011
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 26
    Par défaut
    vous avez entièrement raison,
    Merci beaucoup pour la réponses

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 25/10/2013, 00h46
  2. [INDEX] - ordre des colonnes d'un index composite
    Par PpPool dans le forum Administration
    Réponses: 2
    Dernier message: 25/07/2011, 16h21
  3. VSAM - Alternate index composite
    Par foxbille dans le forum z/OS
    Réponses: 1
    Dernier message: 10/12/2010, 08h20
  4. Conseil creation d'index (composite)
    Par mactwist69 dans le forum Développement
    Réponses: 4
    Dernier message: 15/04/2009, 20h20
  5. Accès à une Table Indexée (index composite) en VBA ACCESS
    Par Denis VERNON dans le forum Access
    Réponses: 1
    Dernier message: 21/04/2006, 19h47

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