Das zugrunde liegende Implementierungsprinzip des MySQL-Index
Verwandte kostenlose Lernempfehlungen: MySQL-Video-Tutorial
1. Einführung
MySQL unterstützt viele Speicher-Engines, und verschiedene Speicher-Engines bieten unterschiedliche Unterstützung für Indizes. Daher unterstützt die MySQL-Datenbank mehrere Indextypen, wie z. B. den BTree-Index und den B+Tree-Index . , Hash-Index, Volltextindex usw.
2. Indextyp
Nur die Speicher-(Speicher-)Engine unterstützt den Hash-Index, um den Hash-Code des Werts zu berechnen Der Hash-Code wird dann am entsprechenden Ort gespeichert, an dem sich der Wert befindet. Da ein Hash-Algorithmus verwendet wird, kann er jedoch nur einem Hash-Code entsprechen Der Hash-Index unterstützt keine Bereichssuch- und Sortierfunktionen.
2. BTree-Index und B+Tree-Index
(1) BTree-Index
BTree-Index ist eine ausgewogene Suche für Bäume mit mehreren Gabeln, wenn die Tiefe des Baums 2d (d > 1) beträgt Höhe ist h, dann muss BTree die folgenden Bedingungen erfüllen: ③Die Blattknotenzeiger sind alle null
④Die Schlüssel von Nicht-Blattknoten sind alle [Schlüssel, Daten]-Tupel , wobei Schlüssel den Indexschlüssel darstellt, Daten sind die Daten der Zeile, in der sich der Schlüsselwert befindet.
(2) B+Tree-Index
③B+ Jeder Nicht-Blattknoten des Baums besteht aus n Schlüsselwerten und n Zeigern.
(3) Vorteile von B+Tree im Vergleich zu BTree:
3. Volltextindex
Der Volltextindex (Volltext) kann nur für MyISAM und InnoDB verwendet werden. Bei größeren Datenmengen ist die Erstellung eines Volltextindex sehr zeitaufwendig. Beim Generieren eines Volltextindex wird eine Wortliste für den Text erstellt und der Index basiert bei der Indizierung auf dieser Wortliste.
MySQL-Datenbank(Video)
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der zugrunde liegenden Implementierungsprinzipien von MySQL-Indizes. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!