Aperçu du cours
Objectif de formation : L’apprenant apprendra à optimiser les performances des applications liées à une base PostgreSQL
Prérequis
- Maîtrise des BDD relationnelles et du langage SQL
- Expérience pratique du serveur de bases de données PostgreSQL
Objectifs pédagogiques
- Optimiser les options de configuration
- Appréhender les différences entre tables, vues et vues matérialisés afin d'améliorer le développement et les performances
- Appliquer le partitionnement
- Implémenter des indexs
- Contrôler les transactions et leurs rôles sur les performances
- Pouvoir lire le plan d’exécution d’une requête SQL
- Pouvoir se servir des statistiques pour modifier le plan d’exécution d’une requête SQL
- Développer les traitements en parallélisant les requêtes
- Exécuter des chargements efficients des données
- Élaborer une méthodologie de diagnostic des requêtes « lentes » et des contre-mesures
Public ciblé
- Administrateurs de bases de données
- Ingénieurs système
- Chefs de projet
- Développeurs confirmés
Programme de formation
-
Paramétrage serveur (1,5 heure)
-
Configuration des paramètres serveur pour l’optimisation des performances
-
Contributions utiles
-
Travaux pratiques : premiers pas dans la gestion des performances serveurs (45 minutes environ)
-
-
BDD avec PostgreSQL (4 heures)
-
Tables
-
Index
-
Vues
-
Vues matérialisées
-
Travaux pratiques : administration des bases de données et optimisation (2,5 heures environ)
-
-
Administration de la concurrence d'accès & des transactions sous PostgreSQL (3 heures)
-
Transactions
-
Verrous
-
Isolation
-
Travaux pratiques (environ 2 heures)
-
-
Optimisation SQL (5 heures)
-
Décomposition des étapes de l’exécution d’une requête
-
Composants du moteur
-
Maîtrise des coûts
-
Techniques d’accès aux données
-
Techniques de jointures
-
Présentation de l’outil Explain
-
Démarche d’optimisation
-
Travaux pratiques : utilisation des concepts abordées dans des cas pratiques pour l’optimisation des usages (3 heures environ)
-
-
Gestion des statistiques (2,5 heures)
-
default_statistics_target
-
Statistiques détaillées
-
Statistiques étendues
-
Travaux pratiques : création et utilisation de statistique dans des cas concrets quotidiens (1,5 heure environ)
-
-
Partitionnement sous PostgreSQL (2 heures)
-
Déploiement du partitionnement
-
Améliorations selon les versions de PostgreSQL
-
Travaux pratiques : Partitionnement des tables et optimisation pour la performance (70 minutes environ)
-
-
Exécution parallélisée des requêtes (2 heures)
-
Exécution paralélisée des requêtes
-
Opérations parallélisées
-
Paramétrage
-
Travaux pratiques (70 minutes environ)
-
-
Optimisation des opérations de chargements (1 heure)
-
Travaux pratiques (45 minutes environ)
-