4D Training & Consultancy

Développement logiciel

Conception de bases relationnelles et optimisation SQL

Une formation pour ingénieurs sur les deux décisions qui déterminent la performance d'une base : la modélisation du schéma et la façon dont l'optimiseur exécute les requêtes. Elle couvre normalisation et dénormalisation raisonnée, clés et contraintes, stratégie d'index, plans d'exécution, cardinalité et réécriture de requêtes.

4 joursPrésentiel interne, en ligne ou sur mesureÉquipes corporate et groupes professionnelsNiveau: Avancé

Aperçu

Un apprentissage pratique pour le transfert en situation de travail.

Une requête qui répond en huit millisecondes sur un poste de développement et en quarante secondes en production ne relève presque jamais du matériel. C'est un index composite absent, un prédicat enveloppé dans une fonction qui rend tout index inutilisable, une estimation statistique fausse de trois ordres de grandeur, ou un ORM émettant une requête par ligne de résultat. Cette formation part du moteur : stockage des lignes sur les pages, ce qu'un index B-tree peut résoudre, estimation de cardinalité et choix entre jointures par boucle imbriquée, hachage ou fusion, lecture d'un plan quand lignes estimées et réelles divergent. La conception du schéma est traitée comme la cause amont.

Prérequis

Expérience pratique du SQL incluant jointures, agrégation et sous-requêtes, et connaissance d'au moins un moteur relationnel.

Objectifs

  • Modéliser un schéma relationnel en troisième forme normale et justifier chaque écart.
  • Choisir types, clés et contraintes rendant les états invalides impossibles à représenter.
  • Concevoir des index composites, couvrants, partiels et d'expression pour les accès réels.
  • Lire un plan d'exécution et identifier l'opérateur à l'origine du coût.
  • Diagnostiquer erreurs de cardinalité, statistiques obsolètes et prédicats non sargables.
  • Réécrire les requêtes lentes et éliminer les accès N+1 introduits par les ORM.

Public cible

  • Développeurs backend dont les applications sont limitées par la latence base de données
  • Administrateurs de bases formalisant les standards d'index et de maintenance
  • Ingénieurs data concevant des schémas opérationnels et de staging
  • Architectes solution revoyant les modèles de données avant le développement
  • Ingénieurs support applicatif enquêtant sur les ralentissements en production
  • Responsables techniques en charge de la capacité, du coût et des budgets de performance

Programme

Une structure claire pour le parcours d'apprentissage.

Programme

Les points du programme sont regroupés dans un seul bloc au lieu de créer un module par ligne.

Module 1 : Modélisation relationnelle et normalisation

Entités, relations et cardinalités définies avant toute création de table

Première, deuxième, troisième forme normale et BCNF appliquées à un schéma réel

Anomalies de mise à jour, d'insertion et de suppression : preuve d'une sous-normalisation

Dénormalisation raisonnée : ce que la vitesse de lecture coûte en complexité d'écriture

Module 2 : Conception physique, types et contraintes

Stockage des lignes, structure des pages, fill factor et importance de l'ordre des colonnes

Types numériques, texte, temporels et JSON et le coût de colonnes trop larges

Clés de substitution ou naturelles, contraintes unique et check, et intégrité référentielle

Stratégies de partitionnement des grandes tables et leur effet sur l'élagage

Module 3 : Stratégie d'indexation

Structure B-tree, sélectivité et rôle décisif de l'ordre des colonnes de tête

Index couvrants, colonnes incluses et suppression de l'accès à la table

Index partiels, d'expression, hash, GIN et plein texte pour prédicats spécifiques

Coût en écriture : mesurer la maintenance des index et supprimer les inutilisés

Module 4 : Lire les plans d'exécution

EXPLAIN et EXPLAIN ANALYZE : lignes et temps estimés face aux valeurs réelles

Comparaison entre scan séquentiel, scan d'index, index-only et bitmap

Boucle imbriquée, hash join et merge join : pourquoi le planificateur choisit chacun

Statistiques, histogrammes, fréquence d'ANALYZE et erreurs sur colonnes corrélées

Module 5 : Réécriture et optimisation des requêtes

Prédicats sargables : éviter fonctions et conversions sur la colonne indexée

Réécritures EXISTS, IN et JOIN et suppression des sous-requêtes corrélées

Fonctions de fenêtre et CTE : quand elles clarifient et quand elles bloquent l'optimiseur

Détecter et corriger les accès N+1 générés par le chargement paresseux des ORM

Module 6 : Concurrence, maintenance et performance dans la durée

Niveaux d'isolation, verrouillage et diagnostic des interblocages via les journaux

MVCC, gonflement des tables, stratégie de vacuum et de reconstruction

Journaux de requêtes lentes, échantillonnage des attentes et méthode de tuning répétable

Migrations de schéma sur grandes tables sans verrous prolongés ni interruption

Supports fournis

  • Manuel de formation, exemples de code commentés et notes de référence
  • Environnement de laboratoire et dépôts de démarrage
  • Exercices, check-lists et modèles de code réutilisables
  • Certificat de participation 4D
  • Accompagnement technique après la formation

Options de formation

Les programmes peuvent être organisés en entreprise, en ligne ou dans un format hybride selon le calendrier, la localisation et les objectifs de vos équipes. Lorsqu'un certificat ou un examen externe est inclus, les règles et frais de certification restent soumis aux politiques de l'organisme certificateur, tandis que 4D assure la formation et l'accompagnement à la préparation.

Pourquoi choisir 4D

4D apporte votre journal de requêtes lentes dans la salle. Les formateurs prennent les dix instructions les plus coûteuses de votre production, lisent leurs plans avec les développeurs qui les ont écrites et le DBA qui les exploite, puis reconstruisent les index et les choix de schéma sous-jacents. Les équipes repartent avec des temps mesurés avant et après et une méthode de tuning réutilisable au prochain incident.

Contacter 4D

Planifiez le bon parcours de formation ou de conseil pour votre équipe.

Partagez quelques détails et 4D orientera votre demande vers la formation, le conseil, l’évaluation, Phoenix ou un programme sur mesure.