Indice de changement rapide de la colonne

0

La question

  1. Est l'ajout de l'index sur l'évolution rapide de la colonne comme "lastUpdatedOn" en vaut la peine ?
  2. Comment calculer le meilleur compromis ?
  3. Quelqu'un peut me pointer à la documentation officielle sur quand et comment n'MySQL reindexes sur la ligne insertions et mises à jour sur la colonne indexée.
indexing mysql sql
2021-11-24 06:35:34
1

La meilleure réponse

0

Si pour avoir un indice, y compris une "évolution rapide de la colonne" est un compromis.

Un UPDATE besoin de supprimer une entrée dans l'index et ajouter une nouvelle entrée d'ailleurs dans l'index.

D'autre part, l'index peut grandement accélérer en raison de l'index.

Veuillez fournir un exemple concret afin que nous puissions discuter les avantages et les inconvénients de plus.

NonUNIQUE index (par opposition à FULLTEXT et SPATIAL) sont maintenus ainsi:

Il y a un "changement de tampon" (qv) dans le buffer_pool qui maintient les mises à jour d'index qui n'ont pas encore été écrites sur le disque.

Lorsqu'un DELETE se produit, une entrée est ajoutée à la Modification de la mémoire Tampon de dire que l'entrée d'index doit être supprimé.

Pour UPDATE deux entrées peuvent avoir besoin d'être mis dans la CB.

Lorsqu'un SELECT utilise un tel indice, il vérifie à la fois la CB et le réel, sur disque, BTree pour l'index. Que l'Arbre est mis en cache (bloc par bloc) dans la buffer_pool. (Un bloc est de 16 ko et peut détenir des centaines de(s) d'entrées.)

La CB est vidée sur le disque "dans le fond" ou "autant que nécessaire". Qui implique l'extraction d'un bloc d'index (sauf si déjà mis en cache), la mise à jour de certaines entrées (supprimer et/ou ajouter), et d'écrire sur le disque. À la fois la lecture et l'écriture sont mis en cache dans le buffer_pool, donc soit ou ni peut-être un physique I/O.

MySQL n'a pas de "reconstruire" un index normal ("revisiter"), sauf par l'intermédiaire de certains ALTERs ou OPTIMIZE. C'est, toutes les modifications sont apportées à la volée. L'action de la CB est transparent pour l'utilisateur.

2021-11-24 22:29:11

Dans d'autres langues

Cette page est dans d'autres langues

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................