Maison > base de données > tutoriel mysql > Pourquoi mes requêtes agrégées fenêtrées affichent-elles des lectures logiques élevées ?

Pourquoi mes requêtes agrégées fenêtrées affichent-elles des lectures logiques élevées ?

Linda Hamilton
Libérer: 2024-12-24 04:15:11
original
193 Les gens l'ont consulté

Why Are My Windowed Aggregate Queries Showing High Logical Reads?

Lectures logiques élevées dans les plans d'exécution de fonctions d'agrégation fenêtrées avec des bobines de sous-expression communes

Des lectures logiques rapportées élevées pour les grandes tables sont souvent observées dans les plans d'exécution en utilisant des bobines de sous-expression communes. La formule pour les lectures logiques des tables de travail est :

Worktable Logical Reads = 1 + NumberOfRows * 2 + NumberOfGroups * 4
Copier après la connexion

Explication

Contrairement aux tables de spoule conventionnelles, les tables de travail comptent les lectures logiques par lecture de ligne, ce qui entraîne un nombre de lectures logiques gonflé. En effet, les tables de travail sont internes au serveur et le comptage de pages hachées est jugé moins utile pour l'analyse.

La formule se décompose comme suit :

  1. 1x lecture logique : La table de travail est créée et initialisée.
  2. 2x lectures logiques par Ligne : La bobine principale lit chaque ligne deux fois, une fois pour l'insérer dans la table de travail et une autre fois pour la lire à partir de la table de travail pour l'agrégation. Les bobines secondaires lisent également chaque ligne deux fois.
  3. 4x lectures logiques par groupe : La bobine principale émet une ligne pour indiquer le début de chaque nouvelle partition, et elle génère une ligne factice pour finaliser le traitement pour le groupe final. Ces lignes supplémentaires représentent le nombre 4x.

Informations supplémentaires

Paul White, dans son article de blog, explique que la formule s'aligne sur le plan d'exécution, où les deux bobines secondaires sont entièrement lues deux fois et la bobine principale émet (nombre de groupes 1) des lignes. La ligne supplémentaire est émise par la bobine principale pour signifier la fin du groupe final.

Conclusion

La formule des lectures logiques de la table de travail est un outil utile pour comprendre la logique gonflée nombre de lectures observés dans les plans d’exécution avec des spools de sous-expressions communs. En reconnaissant que les tables de travail comptent différemment les lectures logiques, il devient plus facile d'interpréter les statistiques de lecture et d'évaluer l'efficacité du plan.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal