Sobes.tech
Senior
81

Je souhaite ajouter un index à une table avec un million d'enregistrements : quelles en sont les conséquences et comment le faire correctement ?

Entreprises à qui on a demandé
ТБанк

Réponse de l'IA

sobes.tech IA

L'ajout d'un index à une table avec un million d'enregistrements peut entraîner une charge importante sur la base de données : l'opération peut prendre du temps, bloquer la table ou ralentir d'autres requêtes. Pour minimiser les conséquences :

  • Utilisez la création d'index avec l'option ONLINE (si le SGBD le supporte), pour ne pas bloquer la table.
  • Effectuez l'opération pendant les périodes de faible charge.
  • Envisagez de créer l'index sur une réplica, puis de basculer dessus.
  • Vérifiez si l'index est réellement nécessaire, pour ne pas gaspiller de ressources.

Exemple pour PostgreSQL :

CREATE INDEX CONCURRENTLY idx_column ON table(column);

L'option CONCURRENTLY permet de créer un index sans bloquer les opérations d'écriture, mais prend plus de temps et nécessite plus de ressources.