Cours SQL et MySQL · Module 9: Index et normalisation
Le Catalogue des Pinakes - qu'est-ce qu'un index
Dans cette leçon3
Bienvenue au cœur de mon travail - la Salle du Catalogue ! C'est ici que sont nés les Pinakes, le premier catalogue de l'histoire. Sans lui, retrouver un seul parchemin parmi des centaines de milliers reviendrait à parcourir chaque rayon, ligne par ligne. Dans le monde de MySQL, on appelle ce balayage fastidieux un parcours complet de table (full table scan).
Pourquoi la Bibliothèque a-t-elle besoin d'un catalogue ?
Imagine que tu cherches un livre intitulé Iliade. Sans catalogue, il te faudrait dérouler chaque parchemin et vérifier son titre. Avec un million de parchemins, cela représente des heures de travail !
Les Pinakes changent tout : j'y ai écrit les titres par ordre alphabétique et noté le numéro du rayon à côté de chacun. Il te suffit désormais d'un coup d'œil au catalogue pour savoir aussitôt où se trouve le parchemin.
Un index dans MySQL
Un index est exactement la même chose - une structure supplémentaire que la base de données construit à côté de la table pour trouver les lignes plus vite. Au lieu de lire toute la table, MySQL consulte l'index et va directement au bon endroit.
1SELECT * FROM ksiazki WHERE tytul = 'Iliada';Sans index sur la colonne tytul, la base de données vérifie chaque ligne de la table ksiazki. Avec un index - elle trouve l'Iliade presque instantanément, tout comme je le fais dans mon catalogue.
À retenir
- Un index ne change pas les données de la table - c'est un « catalogue » séparé.
- Un index accélère la lecture (la recherche).
- Chaque table possède déjà un index : sur la clé primaire (
id).
Dans ce lieu, je vais t'apprendre à construire tes propres catalogues, à lire des plans d'exécution et à organiser les rayons pour que la Bibliothèque fonctionne sans faille. Commençons !
Tu as repéré une erreur dans cette leçon ?
Teste tes connaissances
Réponds aux questions de cette leçon. Choisis une réponse pour voir tout de suite si elle est correcte.
1. Qu'est-ce qu'un index dans une base de données ?
2. Dans la métaphore de la Bibliothèque : à quoi correspond un index par rapport au catalogue des Pinakes ?
Voici 2 des 3 questions de cette leçon. Réponds aux autres dans le jeu.
Tâches pratiques dans le jeu
- Tri vertical
Ordonne les façons de trouver un parchemin, de la plus lente à la plus rapide :