Nouveauté Power BI : les métadonnées sur un modèle sémantique maintenant accessibles en DAX

Par Frederick Samson, 24 janvier 2024

Dans mon dernier article de blogue, je décrivais une nouvelle fonctionnalité dans Power BI Desktop, à savoir la capacité à définir et exécuter des requêtes DAX. Quelque temps après la publication de cet article, Microsoft a ajouté 52 fonctions DAX qui permettent d’obtenir des métadonnées sur un modèle sémantique. Autrefois disponibles via les Dynamic Management Views (DMVs), il est beaucoup plus pratique d’utiliser ces fonctions DAX et cela ouvre la porte à des opportunités intéressantes.

Avantages

Documentés par Microsoft sur leur blogue

Il n’est plus nécessaire d’utiliser un autre langage pour accéder à ces métadonnées. Auparavant c’était une syntaxe ressemblant au SQL mais différente …

Auxquels je pense

  • Plus besoin d’installer l’outil DAX Studio afin d’exécuter les requêtes sur les DMV. Même si c’est un outil essentiel pour les développeurs de modèles sémantiques, c’est beaucoup plus simple de rester à même l’interface de Power BI Desktop.

  • Démocratise son utilisation, car les DMV étaient connus de très peu de développeurs qui ont pour la plupart travaillé avec SQL Server Analysis Services dans le passé.

  • Ajoute une nouvelle option pour documenter de manière dynamique un modèle sémantique
    • Voir la section opportunités

Exemples de métadonnées disponibles

Les trois fonctions suivantes seront certainement très populaires.

  • INFO.TABLES :  contient des informations sur les tables du modèle, telles que le nom de la table, la description et sa visibilité.
  • INFO.COLUMNS : contient des informations sur les colonnes d’un modèle, telles que le nom de la colonne, le type de données et sa visibilité.
  • INFO.MEASURES : contient des informations sur les mesures du modèle, telles que le nom de la mesure, l’expression de la formule et le format appliqué.

Exemple de requête DAX

La requête la plus simple que vous pouvez effectuer avec ces nouvelles fonctions est :

EVALUATE INFO.<NOM DE LA FONCTION>

Par la suite, vous pouvez faire toute requête DAX qui fonctionne sur une table régulière.

Opportunité : documenter dynamiquement un modèle sémantique

Je recommande souvent de séparer les modèles sémantiques des rapports : autant les fichiers PBIX lors du développement, que les espaces de travail pour les héberger pour les raisons suivantes :

  • Expertise différente : modélisation vs visualisation et storytelling
  • Encourage la réutilisation du modèle sémantique dans plusieurs rapports
  • Facilite la gouvernance (sécurité)
  • Permet d’appliquer le RLS même pour les développeurs de rapports qu’il s’agisse de libre-service ou d’une équipe corporative en charge de développer une application officielle
    • Permissions : Read + Build sur le modèle sémantique

Cela signifie que le PBIX qui sert à développer le modèle sémantique ne contient aucune page de rapports « visibles » à l’externe. Power BI Desktop continue de publier un rapport avec une page vide, cela changera peut-être à l’avenir.

Avec l’ajout de ces nouvelles fonctions DAX, des pages du rapport déployé avec le modèle sémantique pourraient contenir de la documentation « dynamique » sur celui-ci. Plutôt que de maintenir de la documentation manuelle, elle serait générée et maintenue automatiquement à jour (ex. après l’ajout d’une mesure, table ou colonne).

Le blogue de Microsoft donne déjà un exemple où toutes les mesures du modèle sont affichées dans un visuel Power BI :

Cependant, l’auteur effectuait un copier/coller du résultat de la requête, ce qui n’est pas intéressant. Il suffirait plutôt d’ajouter une table calculée au modèle et celle-ci pourra être utilisée dans les visuels. NOTE : À l’écriture de ces lignes (la fonctionnalité est jeune), cela ne fonctionnait pas dans le contexte d’une table calculée. Espérons que Microsoft rectifie la situation bientôt!

Mot de la fin

Nul ne peut prévoir comment la communauté Power BI tirera partie de cette nouvelle fonctionnalité. Je parie qu’on sera tous surpris par l’ingéniosité de tous ces passionnés de Power BI. Et vous, comment allez-vous profiter de ce nouvel ajout dans vos projets BI?