Modélisation sémantique Power BI
Guide les utilisateurs dans la construction de modèles sémantiques Power BI optimisés et bien documentés en suivant les meilleures pratiques Microsoft.
Quand utiliser cette compétence
Utilisez cette compétence quand les utilisateurs demandent :
- Créer ou optimiser des modèles sémantiques Power BI
- Concevoir des schémas en étoile (tables de dimension/fait)
- Écrire des mesures DAX ou des colonnes calculées
- Configurer les relations entre tables (cardinalité, filtre croisé)
- Implémenter la sécurité au niveau des lignes (RLS)
- Conventions de nommage pour tables, colonnes, mesures
- Ajouter des descriptions et de la documentation aux modèles
- Tuning de performance et optimisation
- Groupes de calcul et paramètres de champ
- Validation de modèle et vérifications des meilleures pratiques
Phrases déclencheur : "create a measure", "add relationship", "star schema", "optimize model", "DAX formula", "RLS", "naming convention", "model documentation", "cardinality", "cross-filter"
Prérequis
Outils requis
- Power BI Modeling MCP Server : Requis pour se connecter aux modèles sémantiques et les modifier
- Active : connection_operations, table_operations, measure_operations, relationship_operations, etc.
- Doit être configuré et en cours d'exécution pour interagir avec les modèles
Dépendances optionnelles
- Microsoft Learn MCP Server : Recommandé pour rechercher les dernières meilleures pratiques
- Active : microsoft_docs_search, microsoft_docs_fetch
- À utiliser pour les scénarios complexes, les nouvelles fonctionnalités et la documentation officielle
Flux de travail
1. Se connecter et analyser d'abord
Avant de fournir des conseils de modélisation, examinez toujours l'état actuel du modèle :
1. Lister les connexions : connection_operations(operation: "ListConnections")
2. En cas d'absence de connexion, vérifier les instances locales : connection_operations(operation: "ListLocalInstances")
3. Se connecter au modèle (Desktop ou Fabric)
4. Obtenir la vue d'ensemble du modèle : model_operations(operation: "Get")
5. Lister les tables : table_operations(operation: "List")
6. Lister les relations : relationship_operations(operation: "List")
7. Lister les mesures : measure_operations(operation: "List")
2. Évaluer la santé du modèle
Après la connexion, évaluez le modèle par rapport aux meilleures pratiques :
- Schéma en étoile : Les tables sont-elles correctement classées comme dimension ou fait ?
- Relations : Cardinalité correcte ? Filtres bidirectionnels minimaux ?
- Nommage : Convention de nommage lisible et cohérente ?
- Documentation : Les tables, colonnes et mesures ont-elles des descriptions ?
- Mesures : Des mesures explicites pour les calculs clés ?
- Champs masqués : Les colonnes techniques sont-elles masquées dans la vue de rapport ?
3. Fournir des conseils ciblés
En fonction de l'analyse, guidez les améliorations en utilisant des références :
- Conception du schéma en étoile : Voir STAR-SCHEMA.md
- Configuration des relations : Voir RELATIONSHIPS.md
- Mesures DAX et nommage : Voir MEASURES-DAX.md
- Optimisation des performances : Voir PERFORMANCE.md
- Sécurité au niveau des lignes : Voir RLS.md
Référence rapide : Liste de vérification de la qualité du modèle
| Domaine | Meilleure pratique |
|---|---|
| Tables | Classification claire dimension vs fait |
| Nommage | Lisible pour l'humain : Customer Name plutôt que CUST_NM |
| Descriptions | Toutes les tables, colonnes, mesures documentées |
| Mesures | Mesures DAX explicites pour les métriques métier |
| Relations | Relation un-à-plusieurs de la dimension au fait |
| Filtre croisé | Direction unique sauf si spécifiquement nécessaire |
| Champs masqués | Masquer les clés techniques, identifiants de la vue de rapport |
| Table de date | Table de date marquée dédiée |
Référence des outils MCP
Utilisez ces opérations Power BI Modeling MCP :
| Catégorie d'opération | Opérations clés |
|---|---|
connection_operations |
Connect, ListConnections, ListLocalInstances, ConnectFabric |
model_operations |
Get, GetStats, ExportTMDL |
table_operations |
List, Get, Create, Update, GetSchema |
column_operations |
List, Get, Create, Update (descriptions, hidden, format) |
measure_operations |
List, Get, Create, Update, Move |
relationship_operations |
List, Get, Create, Update, Activate, Deactivate |
dax_query_operations |
Execute, Validate |
calculation_group_operations |
List, Create, Update |
security_role_operations |
List, Create, Update, GetEffectivePermissions |
Tâches courantes
Ajouter une mesure avec description
measure_operations(
operation: "Create",
definitions: [{
name: "Total Sales",
tableName: "Sales",
expression: "SUM(Sales[Amount])",
formatString: "$#,##0",
description: "Sum of all sales amounts"
}]
)
Mettre à jour la description d'une colonne
column_operations(
operation: "Update",
definitions: [{
tableName: "Customer",
name: "CustomerKey",
description: "Unique identifier for customer dimension",
isHidden: true
}]
)
Créer une relation
relationship_operations(
operation: "Create",
definitions: [{
fromTable: "Sales",
fromColumn: "CustomerKey",
toTable: "Customer",
toColumn: "CustomerKey",
crossFilteringBehavior: "OneDirection"
}]
)
Quand utiliser Microsoft Learn MCP
Recherchez les meilleures pratiques actuelles avec microsoft_docs_search pour :
- Dernière documentation des fonctions DAX
- Nouvelles fonctionnalités et capacités Power BI
- Scénarios de modélisation complexes (SCD Type 2, plusieurs-à-plusieurs)
- Techniques d'optimisation des performances
- Modèles d'implémentation de sécurité