Fonction UNION DAX vs Power Query

Fonction UNION DAX vs Power Query

Dans ce didacticiel, vous apprendrez une technique d'optimisation DAX à l'aide de la fonction UNION. Ce didacticiel comparera les performances de la fonction UNION par rapport à Power Query et à d'autres techniques de combinaison de tables.

La fonction combine deux tables en une seule table en combinant leurs lignes et en supprimant les lignes en double.

L'exemple de ce didacticiel est une table Sales qui a été divisée en trois tables pour chaque année (2007, 2008, 2009).

Table des matières

La fonction UNION dans DAX

Ouvrez DAX Studio et lancez le plan de synchronisation et de requête du serveur.

Fonction UNION DAX vs Power Query

Le code DAX ci-dessous est utilisé comme exemple :

Fonction UNION DAX vs Power Query

Après avoir exécuté le code, accédez à l' onglet Server Timings . Vous pouvez voir que le code prend un total de 5,4 secondes pour s'exécuter. La plupart du temps d'exécution a été passé dans le moteur de stockage . Chacune de ces trois requêtes contient la même opération, mais les années sont différentes.

Fonction UNION DAX vs Power Query

Une fois ces trois requêtes renvoyées par le moteur de stockage, le moteur de formule effectue une UNION, visible dans le plan de requête logique. Le plan de requête effectue également un pour calculer les ventes totales.

Fonction UNION DAX vs Power Query

Dans le plan de requête physique, vous pouvez voir les trois caches de données contenant les opérations effectuées pour chaque année dans la table Ventes.

Fonction UNION DAX vs Power Query

Comparaison des performances DAX

Pour établir la comparaison, créons une mesure pour Total Sales à l'aide de la table Sales d'origine.

Fonction UNION DAX vs Power Query

Si vous exécutez ce code et accédez à l' onglet Server Timings , vous pouvez constater qu'il est nettement plus efficace que la fonction UNION.

La fonction UNION consomme 97,9 Ko alors que la nouvelle mesure ne consomme que 1 Ko.

Fonction UNION DAX vs Power Query

Lorsque vous utilisez UNION, le moteur DAX renvoie une énorme quantité de cache de données au moteur de formule. Cela met beaucoup de pression sur la RAM.

Donc, si vous avez affaire à un modèle de données contenant plus d'un million de lignes, il n'est pas recommandé d'utiliser la fonction UNION

Alternatives à la fonction UNION DAX

Au lieu d'utiliser UNION, vous pouvez utiliser trois fonctions SUMX pour cet exemple. C'est-à-dire une fonction SUMX pour chaque année.

Fonction UNION DAX vs Power Query

Lorsque vous exécutez ce code et que vous accédez à l'onglet Server Timings, vous pouvez constater que le temps d'exécution est nettement inférieur. Il est passé de 5 400 ms à 33 ms tout en exécutant toujours trois requêtes différentes.

Fonction UNION DAX vs Power Query

Une autre méthode consiste à ajouter la table de modèle de données dans Power Query ou dans la source de données elle-même.

Mais la meilleure option est de créer une table calculée qui effectuera l'union de ces trois tables. Mais cette option a ses avantages et ses inconvénients.

L'utilisation d'une table calculée vous permet d'économiser le temps de traitement global au lieu d'effectuer un ajout dans Power Query. Cependant, cela entraînera une augmentation de la taille de la base de données dans VertiPaq.

Lorsque vous utilisez une table calculée, vous créez une nouvelle table qui combine les trois tables. Mais ces trois tables scindées resteront dans la base de données.

Fonction UNION DAX vs Power Query

Dans cet exemple, les trois tables consomment au total 25 Mo. Si vous créez une table calculée, elle consommera 25 Mo supplémentaires dans votre RAM.

Pour les cas sensibles comme ceux-ci, vous devez prendre une décision éclairée sur la meilleure marche à suivre.

Conclusion

La fonction UNION dans DAX combine deux tables en une seule, ce qui facilite l'analyse des données. Cela fonctionne en prenant deux tables en entrée et en renvoyant une nouvelle table qui contient toutes les lignes des deux tables d'entrée. Cependant, cette fonction a ses propres limites.

La fonction UNION peut être plus lente que d'autres méthodes de combinaison de données, en particulier si les tables d'entrée sont volumineuses. Il peut également consommer plus d'espace dans le stockage par opposition à d'autres alternatives.

Chaque fois qu'une situation nécessite de combiner des tables, il est important de peser le pour et le contre avant de décider d'utiliser la fonction UNION. Vos alternatives incluent la fonction SUMX, une table de modèle de données ou une table calculée.

Tous mes vœux,


Gestion des erreurs dans Power Automate via le branchement parallèle

Gestion des erreurs dans Power Automate via le branchement parallèle

Découvrez l

Comparaison de tables dans Power Query | Tutoriel LuckyTemplates

Comparaison de tables dans Power Query | Tutoriel LuckyTemplates

Découvrez comment comparer facilement des tables dans Power Query pour signaler les différences et optimiser vos analyses de données.

Colonne fractionnée LuckyTemplates par délimiteurs dans DAX

Colonne fractionnée LuckyTemplates par délimiteurs dans DAX

Dans ce blog, vous découvrirez comment diviser les colonnes dans LuckyTemplates par délimiteurs à l'aide de DAX, une méthode efficace pour gérer des modèles de données complexes.

SELECTEDVALUE DAX Exemple - Sélection de trancheuse de récolte

SELECTEDVALUE DAX Exemple - Sélection de trancheuse de récolte

Découvrez comment récolter une valeur avec SELECTEDVALUE DAX pour des calculs dynamiques dans LuckyTemplates.

Calculer la marge en pourcentage dans LuckyTemplates à laide de DAX

Calculer la marge en pourcentage dans LuckyTemplates à laide de DAX

Calculez la marge en pourcentage à l

Modifier les formats de date à laide de léditeur Power Query

Modifier les formats de date à laide de léditeur Power Query

Dans ce didacticiel, nous allons explorer une méthode rapide pour convertir du texte en formats de date à l

Enregistrer la pièce jointe dun e-mail sur SharePoint avec Power Automate

Enregistrer la pièce jointe dun e-mail sur SharePoint avec Power Automate

Dans ce blog, vous apprendrez à enregistrer automatiquement la pièce jointe d

Comment adapter les cellules Excel au texte : 4 solutions simples

Comment adapter les cellules Excel au texte : 4 solutions simples

Découvrez comment adapter les cellules Excel au texte avec ces 4 solutions simples pour améliorer la présentation de vos données.

Générateur de rapports SSRS : formater les en-têtes dans un rapport paginé

Générateur de rapports SSRS : formater les en-têtes dans un rapport paginé

Dans ce didacticiel SSRS Report Builder, découvrez comment utiliser le générateur d

Thème de couleur dans les rapports LuckyTemplates - Conseils et techniques

Thème de couleur dans les rapports LuckyTemplates - Conseils et techniques

Découvrez les outils pour créer un thème de couleur efficace pour vos rapports LuckyTemplates et améliorer leur apparence.