Technologieaustausch

MySql-Leistungsoptimierung 01 – [Datenstruktur und Index]

2024-07-11

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Was ist ein Index?

Fügen Sie hier eine Bildbeschreibung ein

Art des Index

在Mysql中索引是在存储引擎层实现的,而不是在服务层实现的

  • Gemäß Datenstruktur: B-Baum-Index, Hash-Index, Volltext-Index
  • Entsprechend der Speicherstruktur: Clustered-Index, Nicht-Clustered-Index
  • Nach Feldeigenschaften: Primärschlüsselindex, eindeutiger Index, gewöhnlicher Index, Volltextindex
  • Entsprechend der Anzahl der Felder: Singleton-Index, gemeinsamer Index

Gemeinsame Indexdatenstrukturen und Unterschiede

  • Binärbaum, Rot-Schwarz-Baum, B-Baum, B-Nummer
  • Unterschied: Die Höhe des Baums beeinflusst die Leistung beim Abrufen von Daten (jeder Baumknoten ist ein Festplatten-E/A).

Binärbaum

Merkmale:Jeder Knoten hat höchstens zwei untergeordnete Knoten, den kleineren links und den größeren rechts. . Die Verzweigungen sind deutlicher zu erkennen, wenn die Daten zufällig sind.

Legen Sie die ID der folgenden Tabelle als Index fest
就是将id列按照二叉树的数据结构存储起来
Fügen Sie hier eine Bildbeschreibung ein
Wenn Daten nacheinander einzeln eingegeben werden
Die Höhe des Baums ist sehr hoch (es handelt sich um eine verknüpfte Listenstruktur). Zu diesem Zeitpunkt entspricht die Elementsucheffizienz der verknüpften Listenabfrage O (n) und die Datenabrufeffizienz ist äußerst gering.
Fügen Sie hier eine Bildbeschreibung ein

roter schwarzer Baum