Partage de technologie

Réglage des performances MySql 01-[Structure des données et index]

2024-07-11

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

qu'est-ce que l'index

Insérer la description de l'image ici

Type d'index

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

  • Selon la structure des données : index d'arbre B, index de hachage, index de texte intégral
  • Selon la structure de stockage : index clusterisé, index non clusterisé
  • Selon les caractéristiques du champ : index de clé primaire, index unique, index ordinaire, index de texte intégral
  • Selon le nombre de champs : index singleton, index conjoint

Structures de données d'index communes et différences

  • Arbre binaire, arbre rouge-noir, arbre B, numéro B
  • Différence : la hauteur de l'arborescence affecte les performances d'obtention des données (chaque nœud de l'arborescence est une E/S disque)

Arbre binaire

Caractéristiques:Chaque nœud a au plus deux nœuds enfants, le plus petit à gauche et le plus grand à droite. . Les branches sont plus évidentes lorsque les données sont aléatoires.

Définir l'identifiant de la table suivante comme index
就是将id列按照二叉树的数据结构存储起来
Insérer la description de l'image ici
Si les données sont saisies séquentiellement une à la fois
La hauteur de l'arborescence sera très élevée (il s'agit d'une structure de liste chaînée). À ce stade, l'efficacité de la recherche d'éléments est égale à la requête de liste chaînée O(n), et l'efficacité de la récupération des données sera extrêmement faible.
Insérer la description de l'image ici

arbre rouge noir