Bonjour,
J'aimerais savoir comment est physiquement structuré un index dans la machine.

Pour préciser ma question, je travaille actuellement sur de très grosses tables (plusieurs dizaines de millions de lignes) provenant de la fusion de fichiers texte. Il n'y a aucune clé primaire et encore moins en entier auto-incrémenté.
La clé candidate est sur deux colonnes, l'une en char(2) et l'autre en char(12).

J'ai construit un nouveau modèle de données normalisé et je suis en train de transférer les données des tables source vers la nouvelle base.
Si je fais des requêtes sans index, c'est hyper long.
L'ajout d'index sur les tables source prend également beaucoup de temps. J'ai un fichier d'index qui fait 1,5 Go.

Une requête, avec jointure entre la base source et la nouvelle base, pour préparer dans une table temporaire les lignes à ajouter à une table de la nouvelle base a pris plus de 14 heures !

Je me demandais donc si ce serait plus rapide en créant une clé primaire artificielle entière auto-incrémentée dans la table source, plutôt qu'en se basant sur une clé primaire double sur deux colonnes CHAR.
A noter : cette clé primaire ne me servira pas directement dans les requêtes d'importation.

Pour en revenir à ma question de départ :
Est-ce que les index supplémentaires qui m'aideraient à accélérer les requêtes d'importation seraient physiquement construits sur ma clé primaire auto-incrémentée ou bien les index sont-ils déjà physiquement construits à l'aide d'un numéro de ligne inaccessible à l'utilisateur ?