Public visé
Concepteurs et développeurs, administrateurs d’applications et administrateurs de bases de données.
Prérequis
Ecrire des requêtes SQL au quotidien.
Objectifs pédagogiques
A l’issue de cette formation, vous serez capable de :
- Identifier et utiliser les techniques d’optimisation des requêtes SQL afin d’améliorer les performances des applications
Programme
Jour 1
Présentation
- Un objectif : plusieurs requêtes
- Etapes de traitement d’une requête
- Zones mémoires impactées et vues dynamiques
- Recherche des requêtes les plus consommatrices
- Accélérateur usuel : l’index
Fonctionnement de l’optimiseur
- Approche par coûts vs par règles
- Choix au niveau de l’instance, de la session et de la requête
- Statistiques (de premier et de second niveau, étendues sur tuples, sur fonctions)
- Collecte manuelle (analyze, DBMS_STATS)
- Collecte dynamique
- Collecte automatique (AWR)
- Exporter et importer des statistiques
- Directives
Analyse d’une requête
- Plan d’exécution
- Statistiques
- Marquer un traitement
Jour 2
Ecriture des requêtes
- Règles générales
- Opérateurs de comparaison
- Requêtes imbriquées, synchronisées
- Jointures
- Agrégats
- Exploitation des arbres
- Tris
- Regroupement de requêtes
- Autres instructions DML
- Utilisation de Binds Variables
- Parallélisation
- Traitements stockés
Jour 3
Optimisation automatique
- Conseillers : SQL Tuning Advisor, SQL Access Advisor
- Fonctionnement
- Gestion des tâches
- Package : DBMS_SQLTUNE et DBMS_ADVISOR
- Sources : une requête, plusieurs requêtes (STS)
- Accès aux recommandations
- Les profils SQL
- Paramétrage
Compléments
- Choix des structures de tables
- Choix des structures d’index
- Utilisation de vues matérialisées
- Exploitation des caches
Modalités d’évaluation des acquis
- En cours de formation, par des études de cas ou des travaux pratiques
- Et, en fin de formation, par un questionnaire d’auto-évaluation