Upload
esmee-lefranc
View
109
Download
0
Embed Size (px)
Citation preview
Surveillance des performances.
Maintenance proactive.
Proposé par:
Mr. Mustapha HANOUNE
• SOUKAINA KHALLOUFI
• HOUDA ECHERRADI
• MERIYAM GUEDIRA
• FATIMA-EZZEHRA RACHDANI
Première partie
Surveillance des performances
Problèmes d’allocation mémoire
DBA
Conflits de périphériques d’entré/sortie
Conflits de ressources
problèmes de code
d'application
Saturation du réseau
Les méthodologies de surveillance Réactive :
réponse à un problème connu résolution des problèmes après avoir affectés le système
Proactive:
détection de problèmes avant qu'ils se produisent résolution des problèmes avant la production Alertes
Mesures de performances de base de données et
d'instance Plusieurs centaines de statistique de performance
différents sont disponible via:
Le dictionnaire de données
les vues dynamiques des performances
les statistiques destinés à l'optimisateur
Les statistiques destinées à l'optimiseur qui affichent la répartition des données de chaque table sont les suivantes :
Nombre de lignes
Longueur moyenne des lignes
Quantité d'espace libre allouée à la table
Nombre de lignes "chaînées"
Préambule
Mesures de performance du dictionnaire de données
Objets non valides et inutilisables
Statistiques destinées à l'optimiseur
Mesures de performance du dictionnaire de données
L'une des plus importantes mesures de performance du dictionnaire de données concerne le statut des objets.
Statut des objets:• Objet de code PL/SQL• Index
Les index de base de données et les procédures stockées doivent tous deux présenter le statut VALID pour pouvoir être utilisés.
Index
IndexUNUSABLE
Objet de code PL/SQL
PL/SQLINVALID
Objets non valides et inutilisables
Les objets de code PL/SQL sont recompilé
Les index sont reconstruits
PL/SQL1. Ne rien faire. La plupart des objets PL/SQL sont recompilés
automatiquement si nécessaire lors d'un appel. Les utilisateurs percevront simplement un léger retard dû à la recompilation des objets (dans la plupart des cas, ce retard n'est même pas perceptible).
2. Recompiler manuellement l'objet non valide. Les objets PL/SQL non valides peuvent être recompilés
manuellement via Enterprise Manager ou par l'intermédiaire de commandes SQL :
La recompilation manuelle de packages PL/SQL nécessite deux étapes :
ALTER PROCEDURE HR.updatesalary COMPILE;
ALTER PACKATE HR.maintainemp COMPILE;ALTER PACKATE HR.maintainemp COMPILE BODY;
Les Index Les index inutilisables sont rendus valides via leur
reconstruction, qui permet de recalculer les pointeurs. La reconstruction d'un index inutilisable recrée l'index dans un nouvel emplacement, puis l'index inutilisable est supprimé. Cette opération peut être effectuée via Enterprise Manager ou par l'intermédiaire de commandes SQL.
ALTER INDEX HR.emp_empid_pk REBUILD;ALTER INDEX HR.emp_empid_pk REBUILD ONLINE;ALTER INDEX HR.email REBUILD TABLESPACE USERS;
Statistiques destinées à l'optimiseur
A QUOI SERVENT LES STATISTIQUES ORACLE ?
Statistiques de l'optimiseur décrivent en détail la base de données et ses objets.
L'optimiseur de requêtes utilise ces statistiques pour choisir le meilleur plan d'exécution pour chaque instruction SQL.
Statistiques des tables
Nombre de lignes
Nombre de blocs
Longueur moyenne des lignes
Les statistiques de colonne
Nombre de valeurs distinctes (NDV) dans la colonne
Nombre de valeurs NULL dans la colonne
La distribution des données (histogramme)
Statistiques des index
•Nombre de blocs de feuilles•niveaux•facteur de regroupement
Statistiques du système
•Performances E / S et l'utilisation•Les performances du processeur et de l'utilisation
Les mesures de performance collectées
La collecte de statistiques
Collecte automatique
Collecte manuelle
La collecte automatique des statistiques
L'approche recommandée pour la collecte de statistiques est de permettre à Oracle
de collecté automatiquement les statistiques.
Statistiques de l'optimiseur sont recueillies automatiquement avec le
GATHER_STATS_JOB .
Si la base de données a été créée avec l'assistant DBCA (Database Creation
Assistant),
les statistiques destinées à l’optimiseur sont collectées automatiquement une fois
par jour
La collecte de statistiques manuellement avec « DBMS_STATS »
DBMS_Starts
RecueillirAffiche
Modifier
Exporter
Importer
Supprimer
Le programmateur Oracle automatise la collecte des statistiques destinées à l’optimiseur .
Dans la page Administration, cliquez sur Jobs et créez un nouveau travail.
Automatiser la collecte des statistiques destinées à l’optimiseur
Programmer la collecte des statistiques destinées à l’optimiseur
Il faut programmer la collecte des statistiques destinées à l'optimiseur selon une fréquence suffisante pour permettre à l'optimiseur de prendre des décisions appropriées quant aux méthodes d'accès aux données.
la collecte de statistiques implique un travail de la part de l'instance.
Il faut éviter de programmer la collecte des statistiques pendant les heures de forte activité, afin de limiter l'impact sur les opérations normales.
Vues dynamiques des performances
Vues dynamiques des performances
Les vues dynamiques des performances fournissent un cliché de données en temps réel.
chaque accès à une vue dynamique des performances donne des résultats
à jour. Dans le cas des statistiques illustrées ci dessus, la sélection des informations avec la clause ORDER BY a entraîné l'incrémentation de lavaleur sorts (memory).
Les données dynamiques des performances ne sont pas persistantes.
Une fois l'instance arrêtée, les vues sont réinitialisées et le comptage recommence.
Cela signifie que les données de performances obtenues par l'intermédiaire des vues dynamiques des performances ne doivent pas être utilisées pour prendre des décisions de configuration tant que l'instance n'a pas fonctionné pendant un certain temps.
Les mesures dynamiques de performance ne sont généralement pas significatives en soi. Elles doivent être évaluées en termes de tendance (augmentation, diminution) ou par rapport à des données de référence
Afficher les mesures de performance
Afficher les mesures de performance :
La page de détails affiche :
• La dernière valeur connue
• Les valeurs des repères high-water mark et low-water mark.
• Le nombre moyen de lectures
Afficher les mesures de performance :
Réagir aux problèmes de performance :
Réagir aux problèmes de performance :
Réagir aux problèmes de performance :
La page Performance est divisée en trois régions principales :
• Host : mesures de performance du serveur, indiquant le nombre de processus en attente et la quantité de pagination mémoire.
• Active Sessions : Waiting and Working : vue d'ensemble des performances de l'instance, indiquant les mesures de performance regroupées par catégories.
• Instance Throughput : informations sur les sessions en cours, la génération de fichier de journalisation (redo log) et l'activité de lecture des fichiers de données.
Réagir aux problèmes de performance :
Réagir aux problèmes de performance :
Conclusion:
Méthodologies de surveillance :
Réactive.Proactive.
Mesures de performance de base de données et d'instance.
la collecte des statistiques de performance destinées à l'optimiseur:
dictionnaire de données. Vues dynamiques des performances.
Afficher les mesures de performance.Réagir aux problèmes de performance.
Deuxième partie
Maintenance Proactive
Deuxième Partie
Maintenance proactive
Objectifs Définir des seuils d’avertissement et d’alerte critique.
Collecter et utiliser des mesures de performance
référence
Utiliser les fonctions de conseil de réglage et de
diagnostic.
Utiliser ADDM (Automatic Database Diagnostic Monitor).
Gérer le référentiel AWR (Automatic Workload
repository).
Alertes générées par le serveur
Oracle Database 10g permit à l'administrateur de recevoir des alertes sur les problèmes via la console Enterprise Manager Database Control.
Alertes générées par le serveur :
Alertes générées par le serveur :
Alertes générées par le serveur :
Alertes générées par le serveur :
Alertes générées par le serveur :
Définir des seuils
Définir des seuils :
Les seuils sont des valeurs limite auxquelles sont comparées les mesures de performance surveillées. Vous pouvez également définir des seuils sur nombre des mesures de performance importantes du système de sorte qu'une alerte soit générée lorsqu'une mesure de performance surveillée dépasse ces seuils. Cette alerte vous informe alors des problèmes imminents, que vous pouvez résoudre rapidement avant même que les utilisateurs ne les remarquent.
Définir des seuils : Les seuils d'avertissement : sont généralement utilisés pour fournir une notification précoce lorsque les tendances des performances commencent à dévier des valeurs relatives à l'activité normale. En général, aucune action n'est requise pour ces avertissements, qui sont destinés à alerter le DBA afin qu'il commence à surveiller de plus près la situation.
Les alertes critiques : doivent être utilisées pour indiquer des problèmes qui nécessitent une attention immédiate. Vous pouvez définir des actions de réponse automatisée qui seront exécutées si les seuils critiques sont atteints.
Lorsque les seuils sont atteints, les alertes sont déclenchées et signalées comme suit :
•Des notifications apparaissent dans la région Alerts de la page d’accueil Database Control•Envoi facultatif d’alertes par courrier électronique.
Définir des seuils :
Définir des seuils :La page de propriétés Manage Metrics d’Entreprise Manager permet l’accès aux paramètres de seuil.
Préambule:
1. Mesures de référence
2. Utiliser des mesures de référence
3. Fonctions de conseil de réglage et de diagnostic
4. SQL Tuning Advisor et Access Advisor
Mesures de référence
Les mesure de référence fournissent des recommandations et des conseils concernant les seuils , en fonction des données réelles des performances .
Pour capturer une mesure de référence :
1. Appelez l'assistant Create Baseline Wizard à partir de la page Manage Metrics.
2. Indiquez une date et éventuellement une heure correspondant à une charge globale et à des performances normales.
3. Indiquez un pourcentage d'écart d'avertissement et un pourcentage d'écart critique, puis cliquez sur le bouton Go.
4. Sélectionnez la ou les mesures de performance que vous souhaitez capturer (par défaut, une mesure de référence est capturée pour toutes les mesures de performance). valeurs de seuil sont remplies automatiquement à partir des pourcentages d'écart indiqués à l'étape 3. Vous pouvez les personnaliser si nécessaire.
5. Une fois que vous avez apporté les éventuelles modifications souhaitées aux seuils calculés, cliquez sur le bouton OK.
Utiliser des mesures de référence Pour activer une mesure de référence stockée:
Fonctions de : Conseil / Réglage / Diagnostique
(MTTR) AdvisorSQL
Tuning Advisor SQL
Access Advisor
Memory Advisor
Segment Advisor
ADDM
Fonctions
SQL Tuning Advisor et Access Advisor
L'objectif de l'analyse des instructions SQL est d'identifier les instructions SQL qui consomment le plus et de proposer des suggestions pour améliorer leurs performances.
On peut améliorer les performances des instructions SQL en:
• Ajoutant ou en modifiant l'indexation
• Fournissant des données agrégées temporaires par l'intermédiaire de vues matérialisées
• Réécrivant les instructions SQL afin qu'elles soient plus efficaces, ou encore en corrigeant les défauts de configuration.
Les assistants SQL Tuning Advisor et Access Advisor:
Facilitent la recherche des instructions SQL qui consomment le plus
Détectent les erreurs courantes dans la construction des instructions SQL
Recommandent l'utilisation appropriée d'index ou de vues matérialisées et informent le DBA du coût associé à l'ajout de ces objets
Une mémoire SGA trop petite entraîne une dégradation importante des performances
il est souvent difficile de déterminer la quantité de mémoire suffisante
l'affectation d'une trop grande quantité de mémoire à la mémoire SGA peut entraîner
une dégradation des performances du système au même titre qu'une quantité trop petite, suite à la consommation inutile de ressources mémoire précieuses.
MEMORY Advisor
Les fonctions de conseil concernant la mémoire vous permettent d'affecter la taille la plus efficace aux différentes composantes de la mémoire SGA.
Chacune de ces fonctions de conseil présente à l'administrateur un graphique illustrant l'intérêt de l'augmentation de la mémoire par rapport à la quantité de mémoire requise pour y parvenir
Conseil sur la taille du cache de tampon
L'administrateur doit essayer de dimensionner les différentes mémoires cache en
fonction du point de la courbe correspondant à la stabilisation des performances ou à
l'amélioration minimale des performances pour le coût de l'allocation de mémoire.
Segment Advisor Cette fonction de conseil recherche les tables et les index qui
consomment plus d'espace que nécessaire.
Elle recherche toute consommation inutile d'espace au niveau tablespace ou schéma et génère des scripts permettant de réduire cette consommation lorsque cela s'avère possible
Le conseiller segment identifie les segments qui ont un espace disponible pour la remise en état.
Il effectue son analyse en examinant les statistiques d'utilisation et de croissance dans le Workload Repository automatique (REA), et en échantillonnant les données dans le segment.
Il est configuré pour fonctionner pendant des fenêtres de maintenance comme une tâche de maintenance automatisée.
la base de données capture automatiquement les informations statistiques de la mémoire SGA
ces informations sont stockées dans le référentiel AWR (Automatic Workload Repository) sous la forme de clichés (snapshots).
Ces clichés sont stockés sur le disque et sont conservés pendant sept jours
Le référentiel AWR contient des centaines de tables, appartenant toutes au schéma SYSMAN et stockées dans le tablespace SYSAUX.
AWR (Automatic Workload Repository)
Gérer le référentiel AWR Période de conservation
7 jours par défaut
Tenez compte des besoins en termes de stockage
• Intervalle de collecte
• 60 minutes par défaut
• Tenez compte des besoins en termes de stockage et de l’impact sur les performances
Niveau de collecte
• Basic (désactive la plupart des fonctionnalités ADDM)
Typical (recommandé)
• ALL (ajouter aux clichés des informations complémentaires de réglage des instruction SQL)
ADDM (Automatic Database Diagnostic Monitor)
fonction de conseil basée sur le serveur, qui examine les performances de la base de données toutes les 60 minutes.
L'objectif d'ADDM est de détecter de manière précoce les goulets d'étranglement du système
recommander des corrections avant toute dégradation perceptible des performances du système.
Automatic Database Diagnostic Monitor (titre)
Exécution après chaque cliché AWR
Surveillance de l’instance de détection des goulets d’étranglement
Stockage des résultats dans le référentiel AWR
Automatic Database Diagnostic Monitor Dans de nombreux cas, ADDM recommande des solutions pour les problèmes détectés et
quantifie même les avantages liés aux recommandations.
Voici quelques-uns des problèmes courants détectés par ADDM :
Goulets d'étranglement CPU
Gestion inefficace des connexions Oracle Net
Contention liée aux verrous (les verrous seront étudiés dans un prochain chapitre)
Capacité d'E/S
Sous-dimensionnement des structures mémoire Oracle
Instructions SQL à forte consommation de ressources
Temps PL/SQL et Java élevé
Nombreux points de reprise (checkpoints) et cause, par exemple des fichiers journaux
trop petits
ADDM commence son analyse par l'étude des activités auxquelles la base de données consacre le plus de temps, puis navigue dans un arbre sophistiqué de classification des problèmes pour déterminer les causes premières des problèmes. La capacité d'ADDM à découvrir la cause réelle expliquant les problèmes de performance plutôt que de simplement signaler les symptômes représente l'une des raisons de sa supériorité sur tous les autres outils ou utilitaires de gestion des performances Oracle.
L'arbre de classification des problèmes utilisé par ADDM encapsule des décennies d'expérience d'optimisation des performances des propres experts Oracle, il a été spécialement conçu pour diagnostiquer précisément les problèmes les plus courants tels que les goulets d'étranglement de CPU et d'E/S, la mauvaise gestion des connexions, le sous-dimensionnement de la mémoire, les instructions SQL mobilisant beaucoup de ressources, le blocage de verrous, etc. Chaque résultat d'ADDM est associé à une mesure d'impact et d'avantage permettant de définir les priorités dans le traitement des problèmes les plus critiques.
Résultats ADDM
Recommandations ADDM
Synthèse
Définir des seuils d'avertissements et d'alertes critiques
Collecter et utiliser les mesures de performance et de référence
Utiliser les fonctions de conseil de réglage et de diagnostic
Gérer le référentiel AWR
Utiliser ADDM
Merci pour votre attention