Index de base de données : définition
Un index est une structure qui accélère la recherche d’informations dans une table, un peu comme l’index d’un livre permet de trouver une page sans le lire entièrement.
Un compromis entre vitesse de lecture et coût d’écriture
Sans index, la base doit parcourir ligne par ligne l’intégralité d’une table pour trouver ce qu’on lui demande. Avec un index posé sur une colonne fréquemment recherchée, par exemple id_product, elle peut retrouver directement les lignes concernées. La différence devient très visible sur un catalogue de plusieurs dizaines de milliers de produits : une requête qui prenait plusieurs secondes peut descendre à quelques millisecondes.
Ce gain n’est pas gratuit : chaque index occupe de l’espace disque, et ralentit légèrement les écritures, puisque la base doit le mettre à jour à chaque modification de ligne. C’est pourquoi on n’indexe pas toutes les colonnes, mais celles réellement utilisées dans les recherches fréquentes. Un manque d’index sur les bonnes colonnes est une cause classique de lenteur sur un catalogue devenu volumineux.
Questions fréquentes
Ajouter des index partout améliore-t-il toujours les performances ?
Comment savoir si une table manque d’index ?
L’ajout d’un index nécessite-t-il de couper la boutique ?
Décrivez votre besoin en 1 minute
Quelques questions ciblées pour que je vous réponde avec une estimation, pas avec un questionnaire de plus.