background success stories

Contrôle des statistiques Oracle avec Lighty

Lighty possède de nombreux rapports prédéfinis (reports) permettant au DBA de contrôler l’état des statistiques des bases Oracle.

Contrôle de l’optimiseur

L’optimiseur Oracle se contrôle à travers de nombreux paramètres.

Lighty présente ces paramètres via un report.

Les paramètres importants sont :

  • Optimizer_features_enabled : pour définir à quelle version d’Oracle l’optimiseur doit correspondre (par défaut c’est celle de la Release installée). Ne pas confondre ce paramètre avec le paramètre compatible, beaucoup plus restrictif et qui ne peut pas décroitre.
  • Optimizer_mode : vaut ALL_ROWS par défaut, peut prendre les valeurs FIRST_ROWS_1, FIRST_ROWS_10, FIRST_ROWS_1000, FIRST_ROWS_1000.
  • Optimizer_dynamic_sampling : vaut 2 par défaut. Peut prendre les valeurs de 0 à 10 (voir chapitre statistiques).

Les valeurs par défaut de ces paramètres conviennent généralement et ne doivent être modifiées qu’après en avoir mesuré l’impact sur l’application.

 

Préférences de collecte

Toutes les préférences de collecte se trouvent dans le report object statistics settings :

 

On retrouve dans ce report toutes les propriétés globales de la collecte de statistique actuellement en vigueur sur cette base, par exemple : Cascade, Estimate_percent, degree, method_opt, granularity, etc …

(Ces préférences se modifient via la procédure DBMS_STATS.SET_GLOBAL_PREFS).

 

Statistiques au niveau de chaque objet

Le report Lighty de la section Tables, Indexes … montre les tables ayant des statistiques non à jour (Stale) :

L’exemple est montré sur les objets de SYS pour avoir quelques objets Stale (les cordonniers sont souvent les plus mal chaussés …).

Des statistiques dans un état Stale engendrent le risque  d’obtenir un mauvais plan.

 

Statistiques d’une table

Le report Lighty ci-dessous affiche les propriétés des tables et leurs statistiques :

Remarquez les cases à cocher Stale Stats, Locked Stats, Empty Stats qui permettent de voir en un clic les tables ayant des statistiques obsolètes, verrouillées ou vides.

Statistiques d’un Index

Le report Lighty ci-dessous affiche les propriétés des indexes et leurs statistiques :

 

Remarquez les cases à cocher Invisible, Local, Partitionned, Stale Stats, Locked Stats, Empty Stats qui permettent de voir en un clic les indexes invisibles, locaux, partitionnés, ayant des statistiques obsolètes, verrouillées ou vides.

 

Statistiques système

Le report Lighty ci-dessous affiche les statistiques système (dont dépend le calcul de cout de l’optimiseur) :

Comme cela a été expliqué dans cet article, les statistiques système sont différentes des statistiques sur les objets de la base. Elles renseignent l’optimiseur sur la vitesse du Cpu et des accès disques, et  leur collecte est très importante et conseillée par Oracle.

En résumé, qu’elles que soient les informations que vous recherchez sur les statistiques Oracle d’une base, Lighty vous les présente vite et bien !