Wenn eine Tabelle fast komplett in den Hauptspeicher passt, sind
Hash-Indizes das schnellste Mittel, um Anfragen auszuführen.
InnoDB
hat einen Mechanismus, der
Index-Suchen auf den Indizes einer Tabelle beobachtet. Wenn
InnoDB
bemerkt, dass Anfragen von einem
Hash-Index profitieren könnten, baut es automatisch einen auf.
Beachten Sie, dass der Hash-Index immer auf einem vorhandenen
B-Baum-Index der Tabelle aufbaut. InnoDB
kann
einen Hash-Index auf einem beliebig langen Präfix des für den
B-Baum definierten Schlüssels aufbauen, je nachdem, welches
Suchmuster InnoDB
für den B-Baum-Index
beachtet. Ein Hash-Index kann auch partiell sein: Es ist nicht
notwendig, den gesamten B-Baum-Index im Bufferpool zu cachen.
InnoDB
baut Hash-Indizes nach Bedarf für
diejenigen Indexseiten auf, die oft angesprochen werden.
In gewissem Sinne legt sich InnoDB
durch den
anpassungsfähigen Hash-Index-Mechanismus selbst auf einen
großen Arbeitsspeicher hin aus und kommt dadurch der
Architektur von Hauptspeicher-Datenbanken näher.
Dies ist eine Übersetzung des MySQL-Referenzhandbuchs, das sich auf dev.mysql.com befindet. Das ursprüngliche Referenzhandbuch ist auf Englisch, und diese Übersetzung ist nicht notwendigerweise so aktuell wie die englische Ausgabe. Das vorliegende deutschsprachige Handbuch behandelt MySQL bis zur Version 5.1.