banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Pour sa 21ème année, l’association GeoRezo a toujours besoin de vous !

10€ = 1 mois de frais bancaires ; 15€ = 12 mois de nom de domaine ; 30€ = 1 semaine de location des serveurs …

Faire un don 

Retrouver nos membres bienfaiteurs

#1 Thu 27 February 2014 10:46

cec_92
Participant assidu
Date d'inscription: 28 Feb 2008
Messages: 193

Quels champs indexer?

Bonjour,

Je travaille actuellement sur une table Mapinfo qui arrive au cap des 100 000 enregistrements.

Cette table contient une grosse dizaine de champs et je me questionne sur l'intérêt de les indexer.

Quels sont les types de champs qu'il faut absolument indexer? Quels sont ceux qu'il est conseillé d'indexer et ceux qu'il n'est pas nécessaire d'indexer?

J'ai encore du mal à apprécier les bénéfices de l'indexation des champs; peut-être parce que cette indexation est mal faite dans ma table.

Merci d'avance pour votre aide.

Hors ligne

 

#2 Thu 27 February 2014 12:05

nicoboud
Membre
Lieu: Nantes
Date d'inscription: 12 Oct 2007
Messages: 860

Re: Quels champs indexer?

Bonjour,

L'indexation d'un champ est automatiquement fait par mapinfo quand ce champ est utilisé pour une jointure.
Si cette jointure n'est que ponctuelle et pas ou peu utilisée, l'indexation peut être supprimée (surtout si vous avez besoin d'espace disque, sinon autant le laisser).
L'indexation permet de retrouver un enregistrement sans avoir à parcourir la base de donnée en entier : donc gain de vitesse pour toute opération sur une base de donnée.
C'est mieux si le champ indexé ne comporte que des valeurs uniques.

Nicolas.


Co-modérateur du forum Mapinfo
Utilisateur Mapinfo et QGIS

Hors ligne

 

#3 Thu 27 February 2014 14:42

cec_92
Participant assidu
Date d'inscription: 28 Feb 2008
Messages: 193

Re: Quels champs indexer?

Merci pour ces infos.

Du coup, il n'est pas très intéressant d'indexer des champs date par exemple? ou des champs où les mêmes valeurs reviennent souvent?

Hors ligne

 

#4 Thu 27 February 2014 18:03

nicoboud
Membre
Lieu: Nantes
Date d'inscription: 12 Oct 2007
Messages: 860

Re: Quels champs indexer?

cec_92 a écrit:

Du coup, il n'est pas très intéressant d'indexer des champs date par exemple? ou des champs où les mêmes valeurs reviennent souvent?


Il y aura un gain, mais il sera minime je pense par rapport à un champ d'identifiants uniques.

Perso, je laisse faire Mapinfo et je n'indexe pas de moi-même certains champs. par contre il m'est arrivé sur de grosses tables (> au million de ligne) de supprimer certains index pour gagner de la place mémoire sur le disque. Mais dans ce cas-là, il devient judicieux de plutot travailler avec de vrais SGBDR.

Nicolas.


Co-modérateur du forum Mapinfo
Utilisateur Mapinfo et QGIS

Hors ligne

 

#5 Fri 28 February 2014 09:53

cec_92
Participant assidu
Date d'inscription: 28 Feb 2008
Messages: 193

Re: Quels champs indexer?

D'accord avec vous, l'index prend beaucoup de place lorsque l'on commence à avoir beaucoup d'enregistrements.

je m'en rend compte d'ailleurs par le temps que prend Mapinfo à faire par exemple une simple MAJ de colonne, avec ou sans index... Le delta de temps de traitement est assez effarant.

Du coup, je vais suivre vos conseils et n'indexer que le champ de jointure, dont les valeurs sont des identifiants uniques.

Hors ligne

 

Pied de page des forums

Powered by FluxBB