« Matérialiser » est un concept de base de données qui fait référence au stockage du résultat d’une requête, souvent en conjonction avec une vue SQL. L’avantage est qu’en utilisant l’ensemble de résultats, vous pouvez interroger des valeurs stockées plutôt que d’avoir à effectuer des calculs, ce qui se traduit généralement par une amélioration significative du temps de réponse.
Récemment, un client nous a demandé de « matérialiser » des calculs DAX dans un modèle Power BI vers son entrepôt de données. Dans ce blog, je vais vous présenter une approche très simple pour y parvenir.
Il est essentiel de comprendre la nature des calculs DAX : contrairement à ce que l’on croit généralement, ils ne sont pas associés à une table dans Power BI mais à un concept sémantique « indépendant » qui peut être associé à n’importe quelle table du modèle (même une table calculée – nous y reviendrons plus tard).
Les résultats d’un calcul DAX n’existent qu’en conjonction avec une requête ou une table, nous devons donc chercher à les matérialiser.
Typiquement, vous avez 2 options dans Power BI : soit créer un tableau calculé, soit ajouter une colonne calculée avec la ou les mesures que vous voulez matérialiser.
Cette approche utilise une mesure DAX comme SELECTEDCOLUMNS() pour créer un tableau de mesure avec les colonnes de la table source que vous voulez utiliser avec la mesure et la ou les mesures :
Cette approche utilise un simple ajout d’une colonne calculée à la table où vous voulez matérialiser :
Une approche simple pour matérialiser l’un ou l’autre des ensembles de résultats consiste à exporter le fichier de données de la table et à le charger à l’endroit où vous avez besoin des résultats matérialisés.
Une méthode plus élégante et automatisée est disponible via l’outil externe Acterys Power BI Sync qui peut être téléchargé à partir de ce lien: https://landing.acterys.com/power-bi-sync et ne prend que quelques secondes à installer.
Une fois installé, il vous suffit de configurer les détails d’accès de votre serveur cible où vous voulez stocker les tables matérialisées, puis de le pointer et de cliquer sur exporter :
Power BI Sync vous permet également d’automatiser cette tâche et d’exécuter le processus de chargement dans un intervalle de temps choisi :
Avec un abonnement à Acterys, ce tableau est alors aussi immédiatement « write back » et peut être utilisé avec toutes les fonctionnalités de planification incluses dans la solution :
© 2024 Managility Pty Ltd All rights reserved.