Si une base de données est suffisamment petite pour tenir en
mémoire, alors le plus rapide pour faire des requêtes est
d'utiliser les index hash. InnoDB
a un
mécanisme automatique pour surveiller les recherches utilisant
les index d'une table, et si InnoDB
remarque
que la requête pourrait profiter d'un index hash, un tel index
est automatiquement constitué.
Mais notez que les index hash sont toujours bâtis à partir
d'un index B-tree
existant.
InnoDB
peut bâtir un index hash sur un
préfixe de taille arbitraire de clé B-tree
,
suivant le modèle de recherche que InnoDB
remarque dans l'index B-tree
. Un index hash
peut être partiel : il n'est pas obligatoire que tout l'index
B-tree
soit mis en cache dans le pool.
InnoDB
va bâtir des index hash à la demande
pour les tables dont les index sont souvent sollicités.
En un sens, grâce au mécanisme d'index hash adaptatif,
InnoDB
s'adapte tout seul à la mémoire
interne, et se rapproche des architectures de bases en mémoire
vive.
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.