Thème 3 — Intégration et automatisation
Informations générales
| Durée | 3h00 (pause incluse) |
| Positionnement | Jour 2 — Séquences 1 et 2 (matinée) |
| Public visé | Administrateurs Power BI, équipes DSI, architectes de données |
| Prérequis | Maîtrise de Power BI Desktop et Power Query, notions SQL, compte Power BI Pro actif |
| Matériel requis | Power BI Desktop, accès Power BI Service, base SQL Server d’exercice, accès internet |
Objectifs pédagogiques
À l’issue de cette séquence, les participants seront capables de :
- Connaître les principaux connecteurs natifs de Power BI (SQL Server, Oracle, SAP, API REST, Parquet)
- Choisir le mode de connexion adapté : Import, DirectQuery ou Dual selon le contexte
- Se connecter à une API REST avec authentification OAuth et pagination
- Installer, configurer et administrer une passerelle de données (Data Gateway)
- Planifier les rafraîchissements automatiques et configurer le rafraîchissement incrémentiel
- Diagnostiquer et optimiser les temps de traitement des actualisations
Déroulement détaillé de la séquence
Partie 1 — Panorama des connecteurs natifs (25 min)
Contenu à présenter
- Vue d’ensemble des connecteurs : plus de 150 connecteurs natifs dans Power BI
- Connecteurs relationnels : SQL Server, Oracle, PostgreSQL, MySQL, SAP HANA
- Connecteurs cloud : Azure SQL, Azure Synapse, Dataverse, Snowflake, Google BigQuery
- Connecteurs fichiers : Excel, CSV, JSON, XML, Parquet, dossiers
- Connecteurs applications : SharePoint, Dynamics 365, Salesforce, Google Analytics
- Connecteurs personnalisés : API REST, OData, Web, scripts R/Python
Conseils formateur
💡 Adapter la présentation aux sources de données utilisées par les participants. Demander en début de séquence quelles sources ils utilisent au quotidien et adapter les exemples en conséquence.
⚠️ Préciser que certains connecteurs nécessitent une passerelle de données (sources on-premises) tandis que les sources cloud sont accessibles directement.
Partie 2 — Import vs DirectQuery vs Dual (30 min)
Contenu à présenter
- Mode Import : les données sont copiées dans le modèle Power BI, performances optimales, nécessite un rafraîchissement
- Mode DirectQuery : les requêtes sont envoyées en temps réel à la source, données toujours à jour, performances dépendantes de la source
- Mode Dual : combine Import et DirectQuery sur différentes tables, flexibilité maximale
- Critères de choix : volume de données, fréquence de mise à jour, exigences de performance, licence
- Limites du DirectQuery : pas de colonnes calculées complexes, pas de Time Intelligence, latence réseau
- Modèles composites : combiner Import et DirectQuery dans un même rapport
Travaux pratiques
TP — Comparer Import et DirectQuery
- Se connecter à la base SQL Server fournie en mode Import, observer le temps de chargement
- Se reconnecter à la même source en mode DirectQuery, observer le comportement
- Créer un visuel identique dans les deux cas et comparer la réactivité
- Tenter d’ajouter une colonne calculée en DirectQuery pour constater la limitation
Conseils formateur
💡 La comparaison côte à côte Import vs DirectQuery est très parlante. Préparer deux fichiers .pbix identiques, un en Import et un en DirectQuery, pour montrer la différence de réactivité en direct.
Partie 3 — Connexion à une API REST (30 min)
Contenu à présenter
- Principe d’une API REST : URL, méthodes HTTP (GET), format JSON
- Connexion via le connecteur Web dans Power Query : saisir l’URL, configurer l’authentification
- Types d’authentification : anonyme, clé API (en-tête ou paramètre), OAuth 2.0
- Transformation du JSON en tableau : Record.ToTable, List.Transform, Table.ExpandRecordColumn
- Gestion de la pagination : paramètres offset/limit, fonction récursive en M
- Bonnes pratiques : paramétrer l’URL de base, stocker les clés en paramètres sécurisés
Travaux pratiques
TP — Se connecter à une API publique
- Se connecter à l’API REST fournie (ex. : JSONPlaceholderou API météo) via le connecteur Web
- Transformer la réponse JSON en tableau structuré dans Power Query
- Appliquer des transformations : filtrage, renommage des colonnes, typage
- Créer un paramètre Power Query pour l’URL de base
- Créer un visuel simple à partir des données récupérées
Conseils formateur
💡 Utiliser une API publique et gratuite comme JSONPlaceholder (https://jsonplaceholder.typicode.com) pour éviter les problèmes d’authentification. Réserver l’OAuth pour la démonstration formateur.
⚠️ Prévoir une solution de secours (fichier JSON local) au cas où l’accès internet serait instable pendant la formation.
Partie 4 — Passerelles de données (Data Gateway) (25 min)
Contenu à présenter
- Rôle de la passerelle : pont sécurisé entre les sources on-premises et Power BI Service
- Passerelle standard (partagée) vs passerelle personnelle : cas d’usage et différences
- Architecture : la passerelle communique via Azure Service Bus, pas de port entrant à ouvrir
- Installation et configuration : téléchargement, connexion au compte, enregistrement
- Administration : ajout de sources de données, gestion des utilisateurs autorisés
- Haute disponibilité : cluster de passerelles, répartition de charge
- Sécurité : chiffrement des identifiants, proxy, pare-feu
Conseils formateur
💡 Si l’installation d’une passerelle n’est pas possible en salle, préparer des captures d’écran détaillées de chaque étape ou une vidéo courte de l’installation.
⚠️ Insister sur le fait que la passerelle standard est recommandée en production (partagée, administrable, haute disponibilité). La passerelle personnelle est limitée à un seul utilisateur.
Partie 5 — Planification des rafraîchissements (25 min)
Contenu à présenter
- Configuration d’un rafraîchissement planifié dans le Service : fréquence, créneaux horaires
- Limites selon la licence : 8 rafraîchissements/jour en Pro, 48 en Premium
- Rafraîchissement incrémentiel : principe, configuration avec des paramètres RangeStart et RangeEnd
- Avantages du rafraîchissement incrémentiel : réduction du temps de traitement, économie de ressources
- Détection des changements via la date de modification de la source
- Diagnostic des échecs : journal d’actualisation, notifications, codes d’erreur courants
- Optimisation : réduire les colonnes et lignes importées, plier les requêtes (query folding)
Travaux pratiques
TP — Configurer un rafraîchissement planifié
- Publier le rapport créé précédemment dans l’espace de travail
- Configurer les identifiants de la source de données dans le Service
- Planifier un rafraîchissement quotidien à un horaire précis
- Activer les notifications d’échec par e-mail
- Consulter l’historique de rafraîchissement et interpréter les résultats
Conseils formateur
💡 Montrer en direct le paramétrage du rafraîchissement planifié dans le Service. Insister sur la notion de query folding : si la requête n’est pas pliée, le rafraîchissement incrémentiel ne fonctionnera pas.
⚠️ Le rafraîchissement incrémentiel nécessite une colonne de type date/heure dans la source. Sans cette colonne, il faut rester en rafraîchissement complet.
Partie 6 — Optimisation des temps de traitement (15 min)
Contenu à présenter
- Query folding : vérifier que les transformations sont poussées vers la source (clic droit > Afficher la requête native)
- Réduire le volume : supprimer les colonnes inutiles, filtrer les lignes en amont
- Optimiser les types de données : éviter les chaînes longues, préférer les entiers aux décimaux
- Désactiver le chargement des tables intermédiaires (Enable Load = false)
- Surveiller les performances avec Performance Analyzer dans Desktop
- Bonnes pratiques de production : documenter les flux, planifier en heures creuses, monitorer les échecs
Conseils formateur
💡 Montrer Performance Analyzer en direct sur un rapport existant. Identifier ensemble les visuels les plus lents et proposer des pistes d’optimisation. C’est un outil sous-utilisé que les participants apprécient de découvrir.
Synthèse et évaluation (10 min)
- Tour de table : chaque participant cite la source de données qu’il connectera en priorité
- Quiz de validation des acquis (5 questions sur les connecteurs, les modes, les passerelles, le rafraîchissement)
- Questions / réponses ouvertes
- Présentation des ressources complémentaires Microsoft Learn
Ressources de référence
- Connecteurs Power BI — Microsoft Learn
- Mode Import vs DirectQuery — Microsoft Learn
- Passerelle de données locale — Microsoft Learn
- Rafraîchissement incrémentiel — Microsoft Learn
- Query folding dans Power Query — Microsoft Learn
- Performance Analyzer — Microsoft Learn