SGBD

Formation PostgreSQL : optimisation des bases de données relationnelles pour développeurs

Maîtrisez l'optimisation de PostgreSQL pour vos projets de développement. Améliorez la performance des requêtes, gérez les index efficacement et optimisez les schémas de vos bases. Formation pratique pour développeurs confirmés souhaitant approfondir leurs compétences sur PostgreSQL et exploiter pleinement cet outil puissant.

Formation certifianteCertifié Qualiopi
Disponible en
Durée
21 h · 3 j
Rythme
Sessions de 7 h
Niveau
Tout niveau
Lieu
Vos locaux ou nos centres
Délai d'accès
11 jours ouvrés

Tarif intra-entreprise

Sur devis

Groupe jusqu'à 10 personnes · programme adaptable

Demander un devisÊtre rappelé par un conseiller

Réponse sous 24 h ouvrées · sans engagement

Financement

OPCOPlan de développement des compétencesFNE / FAFSimuler mon financement

Objectifs de la formation

Analyser et interpréter les plans d'exécution PostgreSQL pour optimiser les performances
Optimiser les requêtes SQL et gérer l'indexation pour accroître la rapidité des opérations
Configurer PostgreSQL pour atteindre des performances optimales
Concevoir des schémas de base de données performants et efficaces

Programme détaillé

12 modules · 21 heures
01

Introduction à l'optimisation PostgreSQL et outils

  • —Rappels fondamentaux sur PostgreSQL et son architecture
  • —Pourquoi optimiser ? Enjeux et bénéfices pour le développement
  • —Présentation des outils d'analyse de performance (pg_stat_statements, pg_explain)
  • —Configuration de l'environnement de travail pour l'optimisation
  • —Méthodologie d'optimisation : Identifier, Analyser, Corriger, Valider
02

Analyse approfondie des plans d'exécution EXPLAIN/EXPLAIN ANALYZE

  • —Comprendre les opérateurs de plan (Seq Scan, Index Scan, Join)
  • —Interpréter les coûts et durées d'exécution des requêtes
  • —Identification des goulots d'étranglement avec EXPLAIN ANALYZE
  • —Utilisation des formats de sortie (TEXT, XML, JSON, YAML)
  • —Bonnes pratiques pour la lecture et l'analyse de plans complexes
03

Optimisation des requêtes SQL - Bases

  • —Réécriture de requêtes inefficaces : filtres, tris, GROUP BY
  • —Utilisation optimale des clauses WHERE, ORDER BY, LIMIT
  • —Impact des fonctions dans les requêtes et alternatives
  • —Pré-calculs et vues matérialisées pour les requêtes complexes
  • —Utilisation des CTE (Common Table Expressions) pour la lisibilité et la performance
04

Stratégies d'indexation avancées

  • —Types d'index PostgreSQL (B-Tree, Hash, GIN, GIST, BRIN, SP-GiST)
  • —Création d'index multi-colonnes et index partiels
  • —Conditions d'utilisation des index et leur impact sur les inserts/updates
  • —Monitoring de l'utilisation des index et détection des index inutiles
  • —Recommandations pratiques pour le choix et la gestion des index
05

Optimisation des jointures et sous-requêtes

  • —Approches des jointures complexes : NESTED LOOP, HASH JOIN, MERGE JOIN
  • —Cohérence des types de données pour les jointures rapides
  • —Réécriture des sous-requêtes corrélées en jointures si possible
  • —Optimisation des requêtes avec EXISTS, NOT EXISTS, IN, NOT IN
  • —Bonnes pratiques pour l'ordre des tables dans les jointures
06

Gestion des transactions et verrous

  • —Niveaux d'isolation des transactions (Read Committed, Repeatable Read...)
  • —Impact des verrous et deadlocks sur la performance
  • —Identification et résolution des blocages (pg_locks, pg_stat_activity)
  • —Optimisation des transactions pour minimiser les conflits
  • —Utilisation des advisory locks pour la gestion manuelle des ressources
07

Configuration fine du serveur PostgreSQL

  • —Paramètres de mémoire : work_mem, maintenance_work_mem, effective_cache_size
  • —Paramètres de disque : wal_buffers, checkpoint_timeout, random_page_cost
  • —Paramètres du planificateur : cpu_tuple_cost, cpu_index_tuple_cost
  • —Optimisation du VACUUM et AUTOVACUUM
  • —Surveillance et ajustement dynamique des paramètres de configuration
08

Optimisation du schéma de base de données

  • —Normalisation et dénormalisation : avantages et inconvénients
  • —Choix des types de données appropriés (integer vs bigserial, text vs varchar)
  • —Utilisation des contraintes (CHECK, UNIQUE, NOT NULL, FOREIGN KEY)
  • —Partitionnement des tables pour les bases volumineuses
  • —Audit et refactoring de schémas existants
09

Performance avec les fonctions et procédures stockées

  • —Impact de PL/pgSQL sur la performance des requêtes SQL
  • —Bonnes pratiques de conception pour des fonctions efficaces
  • —Utilisation des langages procéduraux alternatifs (PL/Python, PL/Perl)
  • —Debugging et profilage des fonctions et procédures
  • —Sécurité et privilèges des fonctions : impact sur la performance
10

Optimisation des opérations d'écriture (INSERT, UPDATE, DELETE)

  • —Influence des index et contraintes sur les performances d'écriture
  • —Utilisation de COPY pour les importations massives de données
  • —Optimisation des transactions pour les écritures concurrentes
  • —Traitement de larges blocs de données par lots (batch processing)
  • —Stratégies de suppression et mise à jour efficaces
11

Surveillance et maintenance de la performance

  • —Outils de monitoring (pg_top, PGMON, DataDog, Prometheus)
  • —Analyse des journaux d'erreurs et de requêtes lentes
  • —Suivi de l'activité du serveur (pg_stat_activity, pg_stat_statements)
  • —Maintenance régulière : VACUUM, REINDEX, CLUSTER
  • —Planification des tâches d'optimisation et audit de performance
12

Cas pratiques d'optimisation et architecture avancée

  • —Exercices pratiques d'optimisation de requêtes réelles
  • —Stratégies de montée en charge : réplication, sharding, pooling de connexions
  • —Utilisation des caches applicatifs et côté base de données
  • —Déploiement et tests des optimisations en production
  • —Récapitulatif et meilleures pratiques à adopter en développement PostgreSQL
Le conseil de l'expert

L'un des objectifs pédagogiques clés de cette formation est d'analyser et d'interpréter les plans d'exécution PostgreSQL pour optimiser les performances. Cette compétence est cruciale pour les développeurs SQL qui souhaitent comprendre comment leurs requêtes sont traitées par le moteur de base de données. En maîtrisant cette analyse, les participants seront en mesure d'identifier rapidement les goulets d'étranglement et d'apporter les ajustements nécessaires pour améliorer les temps de réponse. Un défi fréquent rencontré par les apprenants dans ce domaine est la difficulté à optimiser efficacement les requêtes SQL, souvent dues à une mauvaise compréhension des mécanismes d'indexation et des jointures. Beaucoup de développeurs s'appuient sur des solutions par défaut qui ne tirent pas pleinement parti des capacités de PostgreSQL, ce qui peut entraîner des performances sous-optimales. Cette formation vise à corriger ces erreurs en fournissant des méthodologies éprouvées et des stratégies avancées. Ce qui distingue cette formation des autres approches est son orientation pratique et son contenu axé sur les performances réelles de PostgreSQL. Les participants bénéficieront de sessions interactives où ils pourront appliquer directement les concepts appris, notamment dans le module sur l’optimisation des jointures et sous-requêtes. Cette approche pragmatique permet non seulement d'acquérir des connaissances théoriques, mais aussi de les mettre en œuvre dans des cas concrets, garantissant ainsi une meilleure rétention des compétences. Pour tirer le maximum de cette formation, il est recommandé de venir avec des exemples de requêtes ou de schémas de base de données réels que vous avez rencontrés dans votre travail. Cela permettra d'enrichir les échanges pendant les sessions et de bénéficier d'un retour personnalisé sur vos propres défis. Votre engagement proactif sera un atout précieux pour maximiser votre apprentissage et votre maîtrise des techniques d'optimisation PostgreSQL.

Pourquoi choisir cette formation en sgbd

🎯

Analyse des plans d'exécution

Maîtrisez l'utilisation des outils EXPLAIN et EXPLAIN ANALYZE pour identifier les goulets d'étranglement et optimiser vos requêtes.

⚙️

Optimisation des requêtes SQL

Apprenez des techniques avancées pour optimiser vos requêtes SQL, garantissant des performances accrues et une réponse rapide de la base de données.

📈

Stratégies d'indexation avancées

Découvrez comment concevoir des stratégies d'indexation efficaces, améliorant significativement la vitesse des opérations sur vos bases de données.

🔗

Optimisation des jointures

Développez des compétences pour optimiser les jointures et sous-requêtes, garantissant des performances exceptionnelles même avec des ensembles de données volumineux.

🛠️

Configuration optimale de PostgreSQL

Apprenez à configurer PostgreSQL pour tirer le meilleur parti de ses performances, en adaptant les paramètres selon vos besoins spécifiques.

📊

Conception de schémas performants

Maîtrisez l'art de concevoir des schémas de bases de données efficaces, optimisant la structure pour des performances durables et évolutives.

Compétences acquises

Analyser et interpréter les plans d'exécution PostgreSQL

Maîtriser l'outil EXPLAIN/ANALYZE pour diagnostiquer les goulots d'étranglement, évaluer les coûts des opérations et comprendre le comportement du planificateur de requêtes.

Optimiser les requêtes SQL et gérer l'indexation

Écrire des requêtes performantes, choisir les types d'index adaptés (B-Tree, GIN, etc.) et les implémenter efficacement pour accélérer les opérations de lecture et d'écriture.

Configurer PostgreSQL pour des performances optimales

Ajuster les paramètres de configuration du serveur (mémoire, WAL, planificateur) et gérer les opérations de maintenance (VACUUM, AUTOVACUUM) pour maximiser le débit et la réactivité de la base.

Concevoir des schémas de base de données performants

Appliquer les meilleures pratiques en matière de modélisation (normalisation, dénormalisation), choix des types de données et partitionnement pour des bases de données évolutives et rapides.

Public, prérequis et modalités

Public visé

Développeurs SQL PostgreSQL Chefs de projet technique Administrateurs de bases de données (DBA) Architectes logiciels

Prérequis

Aucun prérequis spécifique, mais une bonne connaissance de PostgreSQL et de SQL est recommandée.

Moyens pédagogiques

Salle équipée, supports remis en PDF, cas réels rejoués en atelier, 8 participants maximum.

Suivi & évaluation

Évaluation continue pendant la formation via des exercices pratiques et des projets Test final pour évaluer la maîtrise des compétences Rétrospective et feedback pour améliorer la formation

Accessibilité

Notre organisme de formation s'engage à accueillir et accompagner les personnes en situation de handicap. Notre référente handicap, Mme Lorène Travaux est disponible pour étudier avec vous les adaptations pédagogiques, techniques ou logistiques nécessaires avant toute inscription.

Financer cette formation

Plusieurs dispositifs permettent de prendre en charge tout ou partie du coût. Nos conseillers identifient avec vous la solution la plus adaptée à votre situation.

OPCO

Formations financées via votre opérateur de compétences

Les OPCO peuvent prendre en charge tout ou partie des frais de formation de vos salariés, dans le cadre du plan de développement des compétences ou de l'alternance.

En savoir plus

FAF

Aide à la formation pour les indépendants

Les Fonds d'Assurance Formation financent les formations des indépendants, auto-entrepreneurs, professions libérales et chefs d'entreprise (FAFCEA, AGEFICE, FIFPL…).

En savoir plus

France Travail

Des aides pour les demandeurs d'emploi

France Travail peut financer votre formation via l'AIF (Aide Individuelle à la Formation) ou des achats directs. Parlez-en à votre conseiller pour vérifier votre éligibilité.

En savoir plus

Employeur

Votre entreprise peut financer votre formation

Dans le cadre du plan de développement des compétences, l'employeur prend en charge le coût pédagogique et maintient la rémunération pendant la formation.

En savoir plus

FNE-Formation

Un soutien pour les entreprises en transformation

Le FNE-Formation accompagne les entreprises en mutation économique ou en transition écologique et numérique, avec une prise en charge pouvant aller jusqu'à 100 %.

En savoir plus

Besoin d'aide pour choisir votre dispositif ?

Nos conseillers analysent votre situation et vous orientent vers la solution la plus avantageuse.

Être conseillé gratuitement

Ils ont suivi cette formation

« Après la formation, il a optimisé plusieurs requêtes SQL, réduisant ainsi le temps d'exécution des opérations. »

Participant à cette formation · avis recueilli en fin de session

« Elle a analysé les plans d'exécution des requêtes pour identifier des goulots d'étranglement, améliorant les performances de la base de données. »

Participant à cette formation · avis recueilli en fin de session

Questions fréquentes

- Connaissance approfondie de SQL (requêtes complexes, jointures). - Maîtrise des bases de données relationnelles. - Expérience pratique avec PostgreSQL.

Demandez un devis pour la formation PostgreSQL : optimisation des bases de données relationnelles pour développeurs

Programme adaptable à votre contexte. Réponse sous 24 h ouvrées, sans engagement.

Demander un devisCertifié Qualiopi · Financement OPCO / FAF

Formations similaires

Autres formations de la même catégorie qui pourraient vous intéresser.

Certification Usages Informatique et Numérique

14 h

Voir la formation

Maîtriser l'Analyse Forensic Cyber : Enquêtes Numériques Avancées

21 h

Voir la formation

Apprenez les fondamentaux des bases de données relationnelles

21 h

Voir la formation