MySQL supporte plusieurs types d'index, mais le type normal est
ISAM
ou MyISAM
. Ils
utilisent un index B-tree
, et vous pouvez
avoir une approximation de la taille du fichier d'index en
faisant la somme de (longueur_clef+4)/0.67
pour toutes les clefs. (Cela est le pire des cas où les clefs
sont insérées dans l'ordre et qu'aucune n'est compressée.
Les index de chaînes de caractères sont compressés par
rapport aux espaces. Si la première partie de l'index est une
chaîne, son préfixe sera aussi compressé. La compression des
espaces rend le fichier d'index plus petit que ce que nous
avions calculé précédemment si la colonne chaîne possède
beaucoup d'espaces invisibles en début et fin de chaîne ou est
une colonne VARCHAR
qui n'est pas toujours
pleinement utilisée. La compression des préfixes est utilisée
sur les clefs qui commencent par un chaîne de caractères. La
compression des préfixes s'il y a plusieurs chaînes avec des
préfixes identiques.
Dans les tables MyISAM
, vous pouvez aussi
compresser les nombres en spécifiant
PACK_KEYS=1
lors de la création de la table.
Cela vous aidera lorsque vous aurez plusieurs clefs de types
entier qui auront un préfixe identique et que les nombres
seront classé par ordre décroissant des grands octets.
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.