Plan du cours
Introduction, Objectifs et Stratégie de migration
- Objectifs du cours, adéquation du profil des participants et critères de réussite
- Approches de migration de haut niveau et considérations de risque
- Configuration des espaces de travail (workspaces), des dépôts et des jeux de données pour les ateliers pratiques
Jour 1 — Fondamentaux de la migration et Architecture
- Concepts de Lakehouse, aperçu de Delta Lake et architecture Databricks
- Différences entre SMP et MPP et implications pour la migration
- Conception Medallion (Bronze→Silver→Gold) et aperçu d'Unity Catalog
Atelier Jour 1 — Traduction d'une procédure stockée
- Migration pratique d'une procédure stockée exemple vers un notebook
- Cartographie des tables temporaires et des curseurs vers des transformations DataFrame
- Validation et comparaison avec la sortie originale
Jour 2 — Delta Lake avancé & Chargement incrémental
- Transactions ACID, journaux de commit, versioning et time travel
- Auto Loader, patterns MERGE INTO, upserts et évolution de schéma
- OPTIMIZE, VACUUM, Z-ORDER, partitionnement et réglage du stockage
Atelier Jour 2 — Ingestion incrémentale & Optimisation
- Implémentation de l'ingestion Auto Loader et des flux MERGE
- Application de OPTIMIZE, Z-ORDER et VACUUM ; validation des résultats
- Mesure des améliorations des performances de lecture/écriture
Jour 3 — SQL dans Databricks, Performance & Débogage
- Fonctionnalités SQL analytiques : fonctions de fenêtre, fonctions d'ordre supérieur, gestion JSON/tableaux
- Lecture de l'interface Spark UI, DAGs, shuffles, étapes, tâches et diagnostic des goulots d'étranglement
- Patterns de réglage de requêtes : broadcast joins, indices (hints), cache et réduction du débordement (spill)
Atelier Jour 3 — Réécriture du SQL & Réglage des performances
- Réécriture d'un processus SQL lourd en Spark SQL optimisé
- Utilisation des traces Spark UI pour identifier et corriger les problèmes de déséquilibre (skew) et de shuffle
- Benchmark avant/après et documentation des étapes de réglage
Jour 4 — PySpark tactique : Remplacement de la logique procédurale
- Modèle d'exécution Spark : driver, exécuteurs, évaluation paresseuse et stratégies de partitionnement
- Transformation des boucles et des curseurs en opérations DataFrame vectorisées
- Modularisation, UDFs/UDFs pandas, widgets et bibliothèques réutilisables
Atelier Jour 4 — Refactoring des scripts procéduraux
- Refactoring d'un script ETL procédural en notebooks PySpark modulaires
- Introduction de la paramétrisation, des tests de style unitaire et des fonctions réutilisables
- Review de code et application de la liste de contrôle des meilleures pratiques
Jour 5 — Orchestration, Pipeline de bout en bout & Meilleures pratiques
- Databricks Workflows : conception de jobs, dépendances des tâches, déclencheurs et gestion des erreurs
- Conception de pipelines Medallion incrémentaux avec règles de qualité et validation de schéma
- Intégration avec Git (GitHub/Azure DevOps), CI et stratégies de test pour la logique PySpark
Atelier Jour 5 — Construction d'un pipeline complet de bout en bout
- Assemblage du pipeline Bronze→Silver→Gold orchestré avec Workflows
- Implémentation de la journalisation, de l'audit, des retentes et des validations automatisées
- Exécution du pipeline complet, validation des sorties et préparation des notes de déploiement
Opérationnalisation, Gouvernance et Prêt pour la production
- Gouvernance Unity Catalog, lignée et meilleures pratiques de contrôle d'accès
- Coûts, dimensionnement des clusters, auto-mise à l'échelle et patterns de concurrence des jobs
- Listes de contrôle de déploiement, stratégies de retour arrière (rollback) et création de runbooks
Revue finale, Transfert de connaissances et Étapes suivantes
- Présentations des participants sur le travail de migration et les leçons tirées
- Analyse des écarts (gap analysis), activités de suivi recommandées et remise des matériaux de formation
- Références, parcours d'apprentissage supplémentaires et options de support
Pré requis
- Une compréhension des concepts de génie des données
- Une expérience en SQL et avec les procédures stockées (Synapse / SQL Server)
- Une familiarité avec les concepts d'orchestration ETL (ADF ou similaire)
Public cible
- Gestionnaires technologiques avec un background en génie des données
- Ingénieurs en données souhaitant faire évoluer la logique OLAP procédurale vers des patterns de type Lakehouse
- Ingénieurs en plateforme responsables de l'adoption de Databricks