Afficher les analyses SQL
Les analyses SQL sont composées de trois tableaux de bord : analyse de parc, analyse de base de données et analyse SQL. Ils vous permettent d'afficher des informations du niveau de parc le plus élevé, jusqu'au niveau SQL individuel le plus granulaire.
- Informations clés SQL - Analyse de parc : pour les informations clés de niveau de parc de bases de données
Il s'agit du tableau de bord de niveau supérieur qui permet une présentation générale de l'ensemble de vos bases de données activées pour Ops Insights dans le compartiment sélectionné (votre parc). Ici, en haut à gauche, vous pouvez vérifier l'inventaire par version de base de données. Ainsi qu'une arborescence d'activités SQL détaillant les opérations de base de données par nombre moyen de sessions actives dans plusieurs dimensions affichées ensemble. Le groupe Analyses de base de données vous permet de cliquer directement et d'afficher des analyses SQL spécifiques pour les instructions SQL dont les performances se dégradent, les modifications de plan, les problèmes de partage de curseur et les tempêtes d'invalidation. Si vous cliquez sur l'une d'entre elles, une diapositive s'ouvre sur les 50 principales instructions SQL.
Sélectionnez une base de données spécifique que vous souhaitez consulter, ce qui vous ramène au niveau d'analyse de la base de données.
Widget Cas d'emploi Graphiques et notes d'utilisation Inventaire Combien de bases de données dans ce parc ? Graphique en anneau de toutes les bases de données du parc, ventilé par version de base de données. Informations clés de base de données Identifiez rapidement les informations qui ont été observées dans les bases de données du parc et le nombre de bases de données par informations. Mosaïques Insight :- Instruction SQL dont les performances se dégradent
- Modifications de plan
- Problèmes de partage de curseur
- Quantité élevée d'invalidations
Principales bases de données par nombre moyen de sessions actives Quelles bases de données cumulent le plus de sessions actives et sur quelles commandes SQL ? Graphique à barres de la base de données pour chaque base de données ventilée par commande SQL, barres triées par nombre total de sessions actives, par ordre décroissant. N'affiche que les curseurs non PL/SQL.
Correspondance de chargement d'activité SQL Quelles bases de données cumulent le plus de sessions actives et sur quelles commandes SQL ? Graphique à barres de chaque base de données, ventilé par commande SQL, barres triées par nombre total de sessions actives, par ordre décroissant
N'affiche que les curseurs non PL/SQL.
Principales bases de données (liste) Y a-t-il des informations sur mes bases de données les plus importantes (les plus occupées) de la flotte au cours de la période ? Les 50 principales bases de données par temps de base de données total sont affichées dans une liste avec les colonnes suivantes : - Nombre moyen de sessions actives
- Nombre total d'instructions SQL
- Nombre moyen d'instructions SQL quotidiennes
- Nombre d'informations clés de modification de plan.
- Nombre d'analyses SQL dont les performances se dégradent
- Nombre de doublons de partage de curseur
- Nombre élevé d'invalidations
- Nombre de nouvelles instructions SQL
Cliquez sur le nom de la base de données pour explorer le tableau de bord Analyse de la base de données.
Cette image présente un exemple de tableau coulissant Top 50. Pour accéder à ce tableau, sélectionnez les informations clés de base de données appropriées.
Remarque
Cet exemple d'image présente les ID SQL précédés du préfixe FMS (Forcer la signature correspondante), qui indique les statistiques cumulées. Ces ID SQL représentent plusieurs instructions SQL avec des ID différents en raison de l'utilisation littérale, mais partageant le même texte SQL (identifié par le FMS). Toutes les statistiques de performances de ces instructions sont désormais agrégées à l'aide de l'identificateur de préfixe FMS. - Informations clés SQL - Base de données : pour les informations clés au niveau de la base de données
Le tableau de bord d'analyse de base de données est conçu pour offrir une vue d'ensemble de la charge globale SQL exécutée dans la base de données. Cela inclut les propriétés de base de la base de données et le code SQL collecté à partir de celle-ci, y compris les ventilations du temps total par commande et module, ainsi que le ratio de temps en SQL ou PL/SQL. Les mosaïques d'informations clés avec le nombre d'instructions SQL avec des informations de niveau quantifient ces problèmes au niveau de la base de données. L'activité SQL est affichée par jour, ventilée par type de commande, ce qui expose les modifications apportées à la charge globale au fil du temps. Les graphiques de taux d'exécution et d'analyse et de nombre d'instructions SQL et d'invalidation présentent des propriétés d'application importantes au fil du temps.
Passez en revue les activités par type de commande, la quantité d'opérations SQL et PL/SQL, l'activité SQL, l'analyse, les informations clés propres à la base de données et les problèmes de partage de curseur. En bas, une table contenant les principales instructions SQL nécessitant une révision est répertoriée. Sélectionnez celle que vous souhaitez consulter pour passer au niveau de l'analyse SQL.
La section Aperçu de la base de données contient un lien direct vers la page de destination du hub de performances. Cette analyse descendante affiche le jour sélectionné (1 jour) avec les sessions actives les plus élevées de la période sélectionnée dans SQL Insights. Actuellement, les analyses de base de données ne sont pas disponibles pour les bases de données activées via Enterprise Manager.
Widget Cas d'emploi Graphiques et notes d'utilisation Aperçu de la base de données Consultez les propriétés de base de cette base de données et les statistiques relatives à la collecte de télémesures SQL. Les propriétés suivantes sont affichées : - Nom d'affichage de la base de données
- Version de Database
- Nombre moyen d'UC
- Nombre total d'instructions SQL collectées
- Nombre moyen d'instructions SQL collectées par jour
- Nombre de nouvelles instructions SQL
- Liste des instances RAC
- Hub de performances
Région Insights Déterminez rapidement quelles informations SQL et de niveau base de données sont vraies pour cette base de données au cours de la période. Mosaïques Insight : - Instruction SQL dont les performances se dégradent
- Dégradation - Modifications de plan
- Instruction SQL dont les performances s'améliorent
- Amélioration - Modifications de plan
- Quantité élevée d'invalidations
- Problèmes de partage de curseur
Activité SQL par commande Quelles commandes SQL génèrent le plus de temps de base de données sur cette base ? Graphique en anneau du temps base de données total ventilé par type de commande pour les curseurs non PL/SQL. Cliquez sur une commande pour générer une liste détaillée de l'activité SQL associée.
SQL et PL/SQL Les applications de cette base de données encapsulent-elles du code SQL dans PL/SQL ? Quel montant ?
Graphique en anneau affichant le temps de base de données total pour SQL et PL/SQL au cours de la période. Lorsque toutes les instructions SQL sont encapsulées dans du code PL/SQL, le temps de comptage des curseurs PL/SQL et SQL est calculé. Dans ce cas, le graphique en anneau doit afficher des tailles similaires pour chacun.
Lorsqu'il n'y a que peu ou pas d'encapsulation ou d'autre utilisation de PL/SQL, le graphique en anneau est entièrement SQL.
Lorsque le langage PL/SQL domine le langage SQL dans le graphique en anneau, cela implique que les applications effectuent un travail de calcul considérable en PL/SQL.
Activité SQL par module Quels modules génèrent le plus de temps de base de données sur cette base ? Graphique en anneau du temps de base de données par module. Inclut les curseurs SQL et PL/SQL.
Cliquez sur un module pour générer une liste détaillée des activités SQL de ce module.
Activité SQL La répartition des activités SQL par commande change-t-elle de jour en jour ? Existe-t-il une saisonnalité de l'activité de base de données ?
Graphique à barres quotidien de l'activité SQL par commande sur la période. La base de données peut avoir des charges globales hebdomadaires qui ne s'exécutent que certains jours.
Pourcentage d'exécutions de non-analyse Quel pourcentage d'exécutions SQL n'implique pas l'analyse ? Les applications sont-elles extrêmement inefficaces ?
Graphique à courbes de la série temporelle quotidienne du ratio exécution/analyse calculée comme suit : (executions – parses) / executions
Ce ratio sur les totaux quotidiens est affiché sous forme de pourcentage dans le graphique.
Les valeurs négatives indiquent une analyse inutile, car chaque exécution doit impliquer au maximum une analyse.
Les valeurs positives indiquent le pourcentage d'exécutions n'impliquant pas d'analyse. Des valeurs plus élevées indiquent des applications plus efficaces car la surcharge d'analyse est réduite.
Des changements quotidiens peuvent être observés et peuvent être associés à des différences d'application temporelles.
Instruction SQL et instruction SQL invalidée Pourquoi l'analyse de la tempête d'invalidation a-t-elle été déclenchée ? L'application entraîne-t-elle chroniquement de nombreuses invalidations ?
Graphique à courbes des séries chronologiques quotidiennes affichant les mesures suivantes : - · Nombre d'instructions SQL distinctes collectées
- · Nombre d'instructions SQL distinctes invalidées
Une quantité importante d'invalidations est indiquée n'importe quel jour lorsque le nombre d'instructions SQL invalidées dépasse 20 % du nombre total d'instructions SQL.
Les pics importants d'invalidations peuvent être causés par des dépendances SQL sur des objets modifiés.
Les applications qui présentent des niveaux élevés d'invalidations peuvent être plus fragiles.
Principales instructions SQL Existe-t-il des informations sur mes instructions SQL les plus importantes en fonction du temps base de données total ou d'autres mesures ? Les 50 principales instructions SQL classées par temps de base de données apparaissent dans une liste avec les colonnes suivantes : - SQL_ID
- Commande SQL
- Latence moyenne en secondes
- Temps de base de données en secondes
- Temps UC en secondes
- Exécutions
- Mégaoctets d'E/S lus
- Mégaoctets d'E/S écrits
Les instructions SQL de la liste sont toutes classées dans le top 10 dans au moins l'une des catégories suivantes :- Temps de base de données
- Temps UC
- Mo de lecture d'E/S
- Mo d'écriture d'E/S
- Exécutions
La liste peut être triée selon l'une de ces colonnes et affichera au moins les 10 premiers par mesure.
- Informations clés SQL - Analyse SQL : pour les informations clés de niveau SQL
Il s'agit du niveau le plus granulaire pour les analyses SQL. A ce niveau, vous pouvez visualiser une vue d'ensemble des propriétés de performances de l'élément SQL_ID donné sur une base de données donnée. Cela inclut des propriétés de base telles que le type de commande et le texte de l'instruction, ainsi que la latence moyenne et la fréquence d'exécution, et de nombreuses autres mesures de V$SQLSTATS. Les mosaïques d'informations clés indiquent si les informations clés de niveau SQL étaient vraies pour SQL_ID sur la période. Les graphiques quotidiens de la durée totale de la base de données, de la latence moyenne et des E/S permettent d'examiner plus en profondeur la relation entre les plans SQL et l'utilisation des ressources.
La section des propriétés SQL contient un lien direct vers la page de destination du hub de performances, ainsi que vers la page SQL Tuning Advisor. Ces deux analyses descendantes vous permettent d'afficher +/- 12 heures à partir de l'exécution avec la latence élevée pour l'ID SQL en cours. Avec l'analyse descendante de la fonction de conseil STA (SQL Tuning Advisor), la plage sélectionnée correspond aux contrôles de période, par exemple les instructions SQL exécutées pendant la période sélectionnée.
Widget Cas d'emploi Graphiques et notes d'utilisation Propriétés SQL Obtenez un aperçu rapide de SQL_ID et de ses propriétés d'exécution sur cette base de données. Cette commande SQL_ID s'exécute-t-elle fréquemment ?
Existe-t-il de nombreux curseurs enfant pour ce fichier SQL_ID ?
La commande SQL_ID s'exécute-t-elle en parallèle ?
Le langage SQL a-t-il de nombreux plans ?
Les propriétés et statistiques suivantes sont affichées : - SQL_ID
- Texte SQL
- Commande (SELECT, INSERT, etc.)
- Module
- Action
- Latence moyenne (s)
- Nombre moyen d'exécutions par jour
- Mémoire partageable (mb)
- Nombre maximal de versions
- Nombre maximal de plans
- Niveau moyen de parallélisme
- Hub de performances
- SQL Tuning Advisor
Région Insights Identifiez rapidement les informations qui ont été observées pour ce SQL_ID au cours de la période. Mosaïques Insight : - Tendance des performances
- Variabilité des performances
- Modifications de plan uniques
- Plusieurs plans
- Problèmes de partage de curseur
- Invalidations
Temps de base de données et exécutions Reportez-vous à la répartition du temps de base de données et des exécutions par UC et classe d'attente pour ce SQL_ID. Corréler avec les graphiques de latence moyenne et d'E/S.
Graphique à barres quotidien du temps de base de données par UC et classe d'attente. Latence moyenne par plan Confirmer et examiner les informations relatives aux modifications du plan. Confirmer et examiner les informations sur les tendances de performances.
Corréler avec les graphiques de temps de base de données et d'E/S.
Graphique à nuages de points affichant un point pour chaque observation de données delta brutes pour cette SQL_ID sur cette base de données, coloré par les valeurs de hachage de plan correspondantes. Les valeurs de hachage de plan sont observées à la fin de chaque intervalle de données delta brutes, qui est le dernier plan actif pour SQL_ID avant cette collecte.
Cliquez sur une valeur de hachage de plan pour afficher le widget Expliquer le plan, dans lequel la structure du plan peut être vérifiée.
E/S Corréler avec les graphiques de temps de base de données et de latence moyenne. Graphique à barres quotidien du volume de lecture et d'écriture en mégaoctets, ainsi qu'un graphique à courbes quotidien de lecture et d'écriture en mégaoctets par seconde. Bases de données Quelles autres bases de données ont également exécuté cette commande SQL_ID ? Liste de toutes les bases de données dans lesquelles SQL_ID a été exécuté au cours de la période avec les colonnes suivantes : - Nom d'affichage de la base de données
- Temps de base de données en secondes
- Temps de base de données par exécution
- Exécutions
Cliquez sur le nom de la base de données pour accéder au tableau de bord Analyse de base de données.
Plan Les instances RAC utilisent-elles des plans d'exécution différents pour ce SQL_ID ? Comment les coûts de l'optimiseur se comparent-ils ?
Les différences de coût reflètent-elles les différences de latence ?
Liste de toutes les instances de cette base de données sur lesquelles l'exécution de SQL_ID a été observée avec les colonnes suivantes : - Valeur de hachage de plan
- Nom d'instance
- Optimisation du coût du plan
- Latence moyenne
- Exécutions
Cliquez sur une valeur de hachage de plan pour afficher le widget Expliquer le plan, dans lequel la structure du plan peut être vérifiée.
Les valeurs de hachage de plan sont des plans observés à la fin de chaque intervalle de données delta brutes, qui est le dernier plan actif pour SQL_ID avant cette collecte.
Cliquez sur une valeur de hachage de plan pour afficher le widget Expliquer le plan, dans lequel la structure du plan peut être vérifiée.
Afficher les informations clés SQL dans Database Management
Avec Ops Insights activé, vous pouvez également visualiser le tableau de bord des informations clés SQL via Database Management. Pour afficher le tableau de bord theSQL Insights, dans le menu OCI, accédez à Database Management, sélectionnez la base de données et, dans les détails de la base de données gérée, sous Ressources, puis Journaux d'alertes, développez la section Gestion et cliquez sur Analyses SQL. Le tableau de bord s'affichera comme suit :
Le tableau de bord Analyses SQL est uniquement pris en charge pour les bases de données suivantes :
- Base de données autonome avec fonctionnalité complète (ADB-S/D)
- Bases de données pluggables/non Conteneur (externes/cloud)