Die Datenbank speichert den indexierten Wert als B-Tree
Schlüssel und der Datensatzzeiger als B-Tree
Wert.
Immer wenn Sie nach einem Datensatz suchen, der einen bestimmten Wert einer indizierten Spalte enthält, findet die Engine den Schlüssel, der diesen Wert im B-Tree
enthält , ruft den Zeiger auf den Datensatz ab und ruft den Datensatz ab.
Was genau ein "Datensatzzeiger" ist, hängt von der Speicher-Engine ab.
-
In
MyISAM
, ist der Datensatzzeiger ein Offset zum Datensatz inMYI
Datei. -
In
InnoDB
, ist der Datensatzzeiger der Wert desPRIMARY KEY
.
In InnoDB
, die Tabelle selbst ist ein B-Tree
mit einem PRIMARY KEY
als B-Tree
Schlüssel. Dies wird als "Clustered Index" oder "Index-organisierte Tabelle" bezeichnet. In diesem Fall werden alle anderen Felder als B-Tree
gespeichert Wert.
In MyISAM
, werden die Aufzeichnungen ohne besondere Anordnung gespeichert. Dies wird als "Heap-Speicher" bezeichnet.