Il est plutôt fréquent que les analyses contiennent des colonnes inutilisées. Les colonnes qui ne sont pas requises mais qui sont tout de même sélectionnées ont une incidence significative sur les performances. L'un des moyens simples d'améliorer les performances consiste à enlever toutes les colonnes qui ne sont pas requises.
Identification des colonnes inutilisées
.jpg
Par exemple, ce rapport simple indique le nombre de clients par région et par année.
.jpg
Le rapport affiché est un graphique indiquant le nombre de clients par région. Vous pouvez constater que la colonne Year est exclue.
.jpg
Requête logique avec la colonne Year inutilisée
Même si la colonne Year n'apparaît pas dans la vue, elle est tout de même sélectionnée dans le cadre de la requête logique.
.jpg
Requête physique avec la colonne Year inutilisée
Si vous examinez la requête physique, vous pouvez identifier les zones qui ont une incidence sur les performances.
.jpg
Cet exemple présente une requête SELECT count distinct
de la règle d'agrégation de nombre de clients. Dans certaines situations, la requête a également une incidence sur les rapports avec une règle d'agrégation de somme. La requête générée dans ce scénario utilise aussi un ensemble de regroupement. Au niveau de la base de données, il se peut qu'elle doive sélectionner de nombreuses lignes (des millions), puis procéder à un regroupement par année et par région, ainsi que par région. Cela peut entraîner une consommation de ressources de base de données inutiles en quantité significative.
Suppression des colonnes inutilisées
Enlevons la colonne Year, et analysons l'incidence de cette action sur les requêtes logique et physique générées.
.jpg
Requête logique après suppression de la colonne Year
A présent, la requête logique ne contient plus la colonne Year et, plus important encore, l'agrégation de rapport est enlevée.
.jpg
Requête physique après suppression de la colonne Year
La requête physique est bien plus simple maintenant qu'elle n'inclut plus les ensembles de regroupement. De plus, le nombre d'enregistrements sélectionnés est considérablement réduit.
.jpg
En examinant l'analyse des rapports non performants et en commençant simplement par enlever les colonnes inutilisées redondantes, vous pouvez améliorer significativement les performances. La requête physique générée a perdu en complexité et moins d'enregistrements sont renvoyés, ce qui requiert moins de traitement.