Support formation Rapports Power BI

Choisir un mode de stockage

En bref

  • Objectifs : distinguer les cinq modes d'accès aux données ; mesurer leur impact sur toute la chaîne ; choisir le mode de chaque table ; reconnaître une architecture type.
  • Prérequis : avoir suivi la partie 0, en particulier « Power BI dans Microsoft Fabric ».
  • Niveau : intermédiaire.
  • Licence requise : Pro pour Import, DirectQuery et connexion active ; capacité Fabric (référence F) pour Direct Lake.
[Bloc à reprendre de l'ancienne page dans l'éditeur : pptxDeck | Connexion - Les modes de connexion]

Pourquoi ?

Le mode de stockage se choisit au moment de la connexion, mais il détermine où sont stockées les données, quel moteur calcule, quelle charge pèse sur la source, si une passerelle est nécessaire et comment le modèle pourra être réutilisé. Microsoft recommande l'Import par défaut et de ne s'en écarter que pour une contrainte précise : latence, volume, gouvernance, sécurité ou architecture.

Notions clés

Les cinq modes

  • Import : une copie des données est compressée en mémoire par le moteur VertiPaq. C'est le mode le plus rapide et le plus complet (tout Power Query, tout DAX), mais les données ne sont à jour qu'après une actualisation : jusqu'à 8 actualisations planifiées par jour en Pro, 48 en Premium par utilisateur ou sur une capacité Fabric. Certaines sources, comme Excel, ne proposent que ce mode.
  • DirectQuery : aucune donnée n'est stockée dans le modèle ; chaque visuel envoie une ou plusieurs requêtes natives à la source. Ce mode est réservé à certaines sources (SQL Server, Azure SQL, Oracle, Snowflake, points de terminaison SQL Fabric...) et ses performances dépendent de la source.
  • Connexion active (Live connection) : le rapport se connecte à un modèle sémantique publié ou à Analysis Services. Power Query n'est pas accessible et le modèle ne peut pas être modifié ; seules des mesures de rapport peuvent être ajoutées.
  • Modèle composite : le modèle mélange des tables Import et DirectQuery, ou étend un modèle sémantique publié avec des tables locales. Chaque table a son propre mode de stockage : Importer, DirectQuery ou Double.
  • Direct Lake (Fabric) : le modèle lit les tables Delta de OneLake et les charge en mémoire à la demande, sans copie des données. Une actualisation, appelée recadrage, ne copie que les métadonnées pointant vers les derniers fichiers. Il existe deux variantes : Direct Lake sur OneLake, qui peut combiner plusieurs éléments Fabric, et Direct Lake sur SQL, qui passe par le point de terminaison d'analyse SQL d'un seul élément et peut basculer en DirectQuery (par exemple sur une vue SQL ou au-delà des limites de la capacité).

Le mode Double, réservé aux modèles composites, sert une table depuis le cache ou depuis la source selon la requête ; il convient aux tables de dimension.

image.png

Impact de chaque mode sur la chaîne

CritèreImportDirectQueryConnexion activeCompositeDirect Lake
Emplacement des donnéesEn mémoire dans le modèleDans la sourceDans le modèle distantMixte, table par tableTables Delta de OneLake, chargées à la demande
Moteur qui calculeVertiPaqLa sourceLe modèle distantVertiPaq et la sourceVertiPaq
FraîcheurDernière actualisationQuasi temps réelCelle du modèle distantSelon chaque tableDernier recadrage
Charge sur la sourcePendant l'actualisationÀ chaque interaction de chaque utilisateurAucune directeTables DirectQuery seulementAucune sur une base relationnelle
Passerelle (source locale)Pour l'actualisationPour chaque requêteSelon le serveur Analysis ServicesSelon les tablesNon prise en charge (sources cloud)
Transformations Power QueryToutesCelles qui se replient (query folding)AucuneSelon le modeFaites en amont (lakehouse, entrepôt)
Taille du modèleLimitée par la licence ou la capacitéMétadonnées seulementAucune côté rapportRéduiteGarde-fous selon la référence F

Chiffres à retenir pour DirectQuery : un visuel devrait répondre en moins de 5 secondes ; une requête échoue dans le service au bout de 4 minutes ; toute requête intermédiaire de plus d'un million de lignes échoue. Pour Direct Lake, les garde-fous dépendent de la capacité : de F2 à F8, 300 millions de lignes par table et 10 Go de modèle.

Grille de décision

Besoin principalMode à envisager en premier
Interactivité maximale et transformations libresImport
Données de la dernière heure visibles et historique volumineuxTable hybride (partitions Import et une partition DirectQuery)
Très gros volumes dans un lakehouse ou un entrepôt FabricDirect Lake
Croiser plusieurs sources sans tout importerModèle composite avec tables DirectQuery
Un modèle d'entreprise certifié existe déjàConnexion active
Beaucoup d'utilisateurs simultanés et source lenteImport ou tables d'agrégation sur DirectQuery

Architectures types

ArchitecturePrincipeLimite principale
Fichier autonomeUn PBIX par rapportModèles et actualisations dupliqués
Modèle partagéUn modèle certifié, des rapports en connexion activeToute donnée utile doit être dans le modèle
Modèle partagé étenduTables locales ajoutées au modèle partagéRelations limitées, plus coûteuses
Préparation mutualiséeTransformations communes dans des Dataflows Gen2Une couche de plus à orchestrer
Plateforme FabricLakehouse ou entrepôt, modèle Direct LakeCapacité Fabric nécessaire

Les silos des fichiers autonomes (calculs répétés, résultats divergents) disparaissent quand les rapports réutilisent un modèle central :

image.png
image.png

[Capture : service Power BI, espace de travail en vue Traçabilité montrant de gauche à droite une source de données, une passerelle, un Dataflow Gen2, un modèle sémantique et deux rapports reliés par des flèches]

Pas à pas

Changer le mode de stockage d'une table

1. En vue Modèle, sélectionnez une table chargée en DirectQuery.

2. Dans le volet Propriétés, développez Avancé, puis choisissez Importer ou Double dans la liste Mode de stockage.

image.png

3. Lisez l'avertissement : une table passée en Importer ou en Double ne peut plus revenir en DirectQuery. Power BI Desktop peut proposer de passer les tables de dimension liées en Double.

Étendre un modèle sémantique publié

1. Accueil > Obtenir des données > Modèles sémantiques Power BI, puis choisissez le modèle dans le catalogue OneLake et cliquez sur Se connecter. La barre d'état indique une connexion active :

image.png

2. Cliquez sur Apporter des modifications à ce modèle dans la barre d'état, ou ajoutez une nouvelle source, puis confirmez l'ajout d'un modèle local :

image.png

3. Cochez les tables du modèle distant à conserver, puis validez :

image.png

4. Les tables du modèle d'origine passent en DirectQuery et vous pouvez ajouter vos propres sources.

image.png

Exemple

Le fichier d'exemple combine trois sources : la table de faits FactInternetSales d'une base SQL Server en DirectQuery, la table Product d'un modèle sémantique en DirectQuery et la table DimCustomer d'un fichier Excel en Import.

Pièges et bonnes pratiques

  • N'utilisez pas DirectQuery sans optimiser la source : index sur les colonnes de jointure et de filtre, vues préparées, index columnstore.
  • En DirectQuery, cochez l'option de réduction des requêtes (Fichier > Options et paramètres > Options > Réduction des requêtes) et diagnostiquez les visuels lents avec l'analyseur de performances.
  • En DirectQuery, il n'y a pas de hiérarchie de dates automatique et les mesures complexes peuvent être lentes : commencez par des agrégations simples.
  • Dans un modèle composite, les tables calculées sont importées et une colonne calculée d'une table DirectQuery ne peut utiliser que les colonnes de sa propre table.
  • L'extension d'un modèle publié est impossible depuis Mon espace de travail et dépend de paramètres du portail d'administration ; s'ils sont désactivés, le bouton Apporter des modifications à ce modèle n'est pas accessible :
image.png
image.png
  • Une source dont l'adresse est calculée dans le code M (source dynamique) ne peut généralement pas être actualisée dans le service : voir Passerelle, identifiants et niveaux de confidentialité.

À retenir

  • L'Import est le mode par défaut ; les autres modes répondent à une contrainte précise.
  • DirectQuery déplace la charge vers la source et la passerelle, à chaque interaction de chaque utilisateur.
  • Un modèle partagé en connexion active évite les doublons de modèles et d'actualisations.
  • Direct Lake offre des performances proches de l'Import sur de gros volumes, mais exige une capacité Fabric.
  • Raisonnez par couches pour localiser un problème de performance.

Pour aller plus loin

  • DirectQuery dans Power BI : modes de connectivité et guide de décision. Source
  • Mode de stockage de table dans les modèles sémantiques Power BI. Source
  • Utiliser des modèles composites dans Power BI Desktop. Source
  • Se connecter à des modèles sémantiques dans le service Power BI à partir de Power BI Desktop. Source
  • Vue d'ensemble de Direct Lake. Source
  • Conseils sur les modèles DirectQuery. Source
[Bloc à reprendre de l'ancienne page dans l'éditeur : pptxDeck | Connexion - Performances et architecture globale]

Exercice

Une entreprise rennaise de distribution dispose d'une base SQL Server locale (ventes, 40 millions de lignes, mises à jour toutes les heures), d'un fichier Excel d'objectifs par commercial sur SharePoint et de 150 utilisateurs répartis dans 5 services. Chaque service a aujourd'hui son propre fichier PBIX.

  1. Dessinez l'architecture actuelle en couches et repérez les duplications.
  2. Proposez une architecture cible et choisissez le mode des tables (faits Ventes, dimensions, objectifs Excel).
  3. Indiquez où se trouve la passerelle, en quel mode, et combien d'actualisations par jour sont nécessaires.
  4. Le service commercial veut ajouter ses objectifs sans modifier le modèle central : décrivez la démarche et ses limites.
  5. Justifiez chaque choix avec la grille de décision.

Note formateur

À déplacer dans une page masquée. Éléments de corrigé : un modèle sémantique certifié dans un espace « Données » et cinq rapports en connexion active ; ventes en Import avec actualisation incrémentielle (ou table hybride si la dernière heure doit être visible) ; dimensions en Import ; passerelle standard en cluster près de la base SQL ; objectifs commerciaux dans un modèle composite étendu.

[Capture : schéma d'architecture cible dessiné par le formateur, avec la base SQL et SharePoint à gauche, la passerelle, le modèle sémantique certifié au centre et cinq rapports à droite]