A l’issus de cette formation le participant sera capable de :
• Etudier l’impact des statistiques de l’optimiseur sur les
performances du code SQL
• Identifier les instructions SQL inefficaces
• Etudier les méthodes d’accès aux données, notamment les
différents types de jointure
• Modifier une instruction SQL pour l’optimiser
• Générer la trace d’une application aux différents niveaux de son
architecture
• Comprendre comment l’optimiseur de requêtes prend ses décisions
relatives au mode d’accès aux données
• Une expérience dans le développement de code SQL pour Oracle
• Bonne connaissance de SQL et PL/SQL
1. Introduction
Objectifs, programme et annexes du cours
Public ciblé et prérequis
Schémas utilisés dans le cours
Informations sur les comptes utilisés pour le cours
Environnements SQL disponibles pour le cours
Ateliers, scripts de démonstration et scripts des exemples de code
Annexes du cours
2. Introduction au réglage d’instructions SQL
Session de réglage SQL
Stratégies de réglage SQL
Outil de diagnostic SQLTXPLAIN (SQLT)
3. Utiliser les outils de trace d’application
Présentation de l’utilitaire SQL Trace
Opérations à effectuer avant une trace
Présentation des outils de trace
Utilitaire trcsess
Mise en forme des fichiers trace SQL
4. Comprendre les techniques de réglage de base
Ecrire une instruction SQL efficace
Scripts utilisés pour le chapitre
Conception des tables
Utilisation des index
Index transformé
Non-concordance de types de données
Utilisation des valeurs NULL
Réglage d’une clause ORDER BY
5. Concepts fondamentaux de l’optimiseur
Représentation des instructions SQL
Traitement des instructions SQL
Pourquoi utiliser un optimiseur ?
Composants de l’optimiseur
Outil de transformation de requêtes
Optimiseur basé sur le coût
Optimisation adaptative des requêtes
Fonctionnalités de l’optimiseur et versions d’Oracle Database
6. Générer et afficher des plans d’exécution
Présentation des plans d’exécution
Commande EXPLAIN PLAN
Table de plan
AUTOTRACE
Vue V$SQL_PLAN
Référentiel AWR (Automatic Workload Repository)
Fonction de surveillance SQL
7. Interpréter les plans d’exécution
Comprendre les plans d’exécution en série
Optimisations adaptatives
8. Optimiseur : Chemins d’accès aux tables et aux index
Opérations sur les row sources
Structures principales et chemins d’accès
Balayage complet de table
Index
Observations courantes
9. Opérations de jointure de l’optimiseur
Méthodes de jointure
Types de jointure
10. Autres opérateurs de l’optimiseur
Opérateurs SQL
Autres opérations de degré N
Opérateurs liés au cache de résultats
11. Présentation des statistiques de l’optimiseur
Statistiques de l’optimiseur
Types de statistiques
Collecte et gestion des statistiques de l’optimiseur
12. Utiliser des variables attachées
Partage de curseurs et valeurs littérales différentes
Partage de curseurs et variables attachées
13. SQL Plan Management
Garantir les performances du code SQL
SQL Plan Management
Exercice
Alternance de présentations conceptuelles et mises en pratique.
30% théorique et 70% pratique
Méthodes pédagogiques;
La pédagogie active permet un échange permanent avec les participants.