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

SQL Oracle Discussion :

Indexer intelligemment sa base de données


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juillet 2006
    Messages
    143
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 143
    Par défaut Indexer intelligemment sa base de données
    Bonjour à tous, je me pose des questions afin de bien positionner les index dans une base de données, j'ai trouvé un peu d'aide sur la description d'un index, mais pas réellement sur comment bien les utiliser.

    Jusqu'ici, je me suis dis qu'il fallait indexer les champs souvent sollicités dans les clauses where de mes requêtes, pour les tables à forte volumétrie bien sûr, j'ai bon ?

    Je me pose la question suivante, j'ai une table A à forte volumétrie qui utilise une clé étrangère d'une table B contenant très peu d'enregistrements, faut-il créer un index de la colonne sur la table A ou sur la table B ?

    Si vous avez d'autres conseils, je suis preneur.

    Merci.

  2. #2
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

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

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Par défaut
    si tu as une clé primaire, alors tu as de toute façon un index. Il est souvent bon d'avoir aussi un index sur la colonne de clé étrangère, mais pas obligatoire...

  3. #3
    Membre confirmé
    Inscrit en
    Juillet 2006
    Messages
    143
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 143
    Par défaut
    Pour information, voici la manière dont j'ai indexé la base et qui produit de bons résultats (sous réserve de revoir quelques requêtes qui étaient un peu affreuses...) :

    - Indexation des champs sollicités dans les clauses des requêtes (les requêtes de recherche notamment)
    - Indexation des clés étrangères dans les tables à forte volumétrie
    - Indexation des clés étrangères provenant de tables à forte volumétrie

  4. #4
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 953
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 953
    Par défaut
    Tu peux également indexer les clés étrangères des tables à pas très grosse volumétrie. Les cas "pas obligatoires" précisés par laurent sont quand même assez rare, cf :
    http://asktom.oracle.com/pls/asktom/...D:292016138754

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 11/02/2008, 10h05
  2. Utilitaire pour renouveler les index d'une base de données paradox
    Par jenteldz47 dans le forum Bases de données
    Réponses: 3
    Dernier message: 09/07/2007, 11h58
  3. Tester l'existence d'un index dans une base de données
    Par QuickSave dans le forum Bases de données
    Réponses: 4
    Dernier message: 31/01/2007, 13h41
  4. Problème avec les indexes sur une base de données.
    Par osoudee dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 09/02/2006, 09h24
  5. Créer un index pour une Base de données
    Par john7 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 31/01/2005, 21h43

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