Bases de données & Oracle

Optimisation des requêtes SQL sous Oracle

Diagnostiquez une requête Oracle lente avec des mesures avant de choisir une correction. Les ateliers confrontent plans, cardinalités, index et réécritures en préservant le résultat métier.

3 jours · 21 hIntermédiaireHybride

Pour qui ?

Développeurs SQL, administrateurs Oracle et ingénieurs performance chargés de diagnostiquer des requêtes lentes.

Prérequis

La maîtrise du SQL et PL/SQL est indispensable.

Des compétences à mettre en pratique

Objectifs pédagogiques

  • Connaître les particularités des types d'applications
  • Savoir traiter des requêtes SQL
  • Être en mesure d'utiliser les outils de diagnostic et de mesure de performance
  • Être capable d'optimiser le schéma relationnel
  • Apprendre à optimiser le serveur
  • Comprendre l'optimisation des requêtes SQL
  • Comprendre la parallélisation d'exécution des requêtes

Votre progression, jour après jour

Programme détaillé

6 séquences · 21 heures indicatives · ateliers et évaluation

Télécharger le programme (PDF)

Le cas fil rouge

Diagnostiquer et optimiser des requêtes Oracle en conservant leurs résultats et en justifiant chaque modification par une mesure.

Préparer votre formation et découvrir la méthode

Préparer la formation

SQL, jointures et bases Oracle ; schéma et charge de test, outils utilisés selon licences disponibles.

Apports illustrés, exercices progressifs, ateliers sur un cas fil rouge et retour argumenté sur les productions. Les ateliers et l'évaluation font partie des heures indiquées.

Jour 01Établir une mesure de référence7 h · 2 séquences avec mise en pratique

Séquence 1 · 3 h 30

Établir une mesure de référence

  • Décrire charge, volumes et objectif de temps de réponse.
  • Distinguer durée, CPU, lectures et attentes.
  • Rejouer une requête dans des conditions comparables.
  • Mesurer durée, lectures, volume et fréquence avec un jeu représentatif et paramètres connus.
Notions et méthodes en détail
  • Capturer SQL, paramètres, volume et durée dans un scénario reproductible.
  • Distinguer temps écoulé, CPU, lectures et attente.
  • Vérifier variabilité des paramètres avant de comparer deux exécutions.

Atelier prévuMesurer trois requêtes lentes et construire une fiche de référence avec paramètres, résultat et contexte d'exécution.

Livrable attenduFiche de référence et protocole de mesure.

Vérification en atelierLa mesure de référence décrit données, binds et conditions d’exécution.

Pour aller plus loin

Éviter de comparer une exécution à cache chaud avec une référence à cache froid.

Séquence 2 · 3 h 30

Lire les plans d'exécution

  • Distinguer plan estimé et statistiques d'une exécution réelle.
  • Examiner cardinalités, sélectivité et ordres de jointure.
  • Utiliser DBMS_XPLAN dans le périmètre autorisé.
  • Lire cardinalités estimées et réelles, chemins d’accès et méthodes de jointure.
Notions et méthodes en détail
  • Lire ordre des opérations, méthodes de jointure et accès aux tables.
  • Comparer cardinalités estimées et observées avec les outils disponibles et autorisés.
  • Relier une erreur d’estimation aux statistiques ou à la distribution des données.

Atelier prévuRepérer l'opération qui multiplie les lignes dans une requête et comparer estimation et observation.

Livrable attenduPlan annoté et hypothèse de diagnostic.

Vérification en atelierLe diagnostic situe l’opération coûteuse et une cause plausible mesurable.

Pour aller plus loin

Localiser le premier écart d’estimation qui dégrade le plan.

Jour 02Réécrire sans changer le sens7 h · 2 séquences avec mise en pratique

Séquence 3 · 3 h 30

Réécrire sans changer le sens

  • Examiner prédicats, sous-requêtes et conversions implicites.
  • Éviter fonctions inutiles sur colonnes filtrées quand elles gênent l'accès.
  • Vérifier NULL, doublons et équivalence des résultats.
  • Préserver nulls, doublons et granularité lors d’une réécriture de jointure ou sous-requête.
Notions et méthodes en détail
  • Réécrire filtres, sous-requêtes et expressions en conservant NULL, doublons et cardinalité.
  • Éviter conversion implicite et fonction inutile sur une colonne filtrée.
  • Vérifier équivalence sur valeurs limites et populations vides.

Atelier prévuRéécrire une requête de reporting puis comparer exactement les jeux de résultats avant de mesurer le gain.

Livrable attenduRequête réécrite et tests d’équivalence.

Vérification en atelierLa version optimisée retourne les mêmes résultats sur le jeu de recette.

Pour aller plus loin

Prouver l’équivalence de deux requêtes sur des cas limites.

Séquence 4 · 3 h 30

Optimiser les accès aux données

  • Choisir index simples ou composés selon les prédicats.
  • Évaluer sélectivité, ordre des colonnes et coût de maintenance.
  • Comprendre rôle des statistiques et limites des hints.
  • Évaluer sélectivité, index composites, fonctions sur colonnes et partitionnement.
Notions et méthodes en détail
  • Comparer index simple, composé et accès complet selon sélectivité et volume.
  • Examiner ordre des colonnes, clustering et coût de maintenance des index.
  • Mesurer l’effet d’un index sur lectures et écritures concernées.

Atelier prévuTester deux index candidats et conserver celui dont le bénéfice est démontré sur la charge représentative.

Livrable attenduProposition d’accès et bilan des coûts.

Vérification en atelierLe choix est motivé par le plan réel et le coût global du scénario.

Pour aller plus loin

Mesurer le gain de lecture face au coût d’écriture d’un nouvel index.

Jour 03Examiner les leviers du serveur7 h · 2 séquences avec mise en pratique

Séquence 5 · 3 h 30

Examiner les leviers du serveur

  • Distinguer problème SQL, verrou, mémoire et entrée-sortie.
  • Comprendre partitionnement et exécution parallèle selon les options disponibles.
  • Évaluer l'effet d'une optimisation sur les autres traitements.
  • Examiner statistiques, variables liées et paramètres pertinents ; vérifier les licences des outils utilisés.
Notions et méthodes en détail
  • Examiner statistiques, mémoire de travail et parallélisme sans modifier plusieurs leviers à la fois.
  • Identifier les fonctions de diagnostic soumises à licence avant utilisation.
  • Distinguer problème SQL, contention et limite de ressources serveur.

Atelier prévuÉtudier un rapport de charge et expliquer pourquoi ajouter du parallélisme peut aggraver la contention.

Livrable attenduDiagnostic serveur et leviers justifiés.

Vérification en atelierLa recommandation respecte l’environnement et les licences effectivement disponibles.

Pour aller plus loin

Distinguer problème de requête, contention et manque de ressources.

Séquence 6 · 3 h 30

Stabiliser et documenter les améliorations

  • Rejouer paramètres rares et volumes plus importants.
  • Prévoir surveillance de régression et retour arrière.
  • Documenter les outils nécessitant une licence particulière.
  • Contrôler stabilité sur plusieurs valeurs, concurrence et volumes ; prévoir retour arrière.
Notions et méthodes en détail
  • Tester plusieurs valeurs de paramètres et tailles de résultat.
  • Documenter hypothèses, plan avant/après et conditions de régression.
  • Préparer suivi et retour au comportement précédent si une correction dégrade un autre cas.

Atelier prévuRemettre trois fiches d'optimisation avec preuve d'équivalence, mesures avant/après et conditions de validité.

Livrable attenduRapport d’optimisation et plan de surveillance.

Vérification en atelierLe gain reste vérifié sur les variantes représentatives du besoin.

Pour aller plus loin

Détecter une optimisation favorable à un cas mais régressive pour les autres.

Mettre vos acquis à l’épreuve

Évaluation finale prévue

Mise en situation individuelle et restitution commentée, incluses dans la dernière séquence. Durée indicative : 60 minutes.

Critères de réussite
  • Aucune amélioration ne modifie le résultat attendu.
  • Les mesures comparent des charges équivalentes.
  • Les choix d'index et de parallélisme incluent leurs coûts.

Adaptation et validation pédagogique. Version enrichie proposée, à valider par le formateur. Répartition pédagogique proposée sur une base de 7 heures par jour, pauses exclues. À ajuster avec le formateur au positionnement initial. Les approfondissements « Pour aller plus loin » sont sélectionnés par le formateur selon le positionnement et le temps disponible ; ils ne constituent pas des heures supplémentaires garanties.

Les ateliers décrivent les travaux prévus. Leurs fichiers, corrigés et évaluations en ligne sont à préparer, sauf ressources explicitement disponibles dans le module pilote.

Références pour approfondir

Documentation des organismes et éditeurs. La progression et les ateliers sont une rédaction originale pour Beyond Expertise.

Pour obtenir plus de détails ou le programme détaillé, contactez le centre Beyond Expertise.

Contacter le centre

Accès, accompagnement et reconnaissance

Le centre doit confirmer les prérequis, le programme final, les dates, les horaires et le tarif avant inscription. Le délai d’accès dépend des disponibilités et du besoin. L’ouverture d’une session et la disponibilité d’un cours e-learning sont confirmées avant inscription.

Les ateliers, méthodes et évaluations du programme sont proposés pour validation pédagogique. Les supports effectivement disponibles sont indiqués dans la section « Contenu e-learning ».

Le parcours ne délivre pas de diplôme ni de certification professionnelle. Aucune éligibilité CPF ou prise en charge n’est garantie. Toute préparation à un examen externe devra faire l’objet d’informations et d’habilitations vérifiées.

Contenu e-learning

Cours e-learning à préparer

Les objectifs et prérequis sont disponibles. Les leçons, supports et évaluations de ce parcours ne sont pas encore intégrés dans cet espace. Le programme détaillé ci-dessus décrit les apprentissages et les ateliers prévus.

Origine des informations et statut du programme

Durée, niveau, modalités, objectifs et tarif relevés sur le site officiel le 11 septembre 2026. Le déroulé détaillé a été enrichi par Beyond Expertise. Validation pédagogique du formateur à réaliser avant animation.

Consulter la fiche du site officiel