Power Pivot et Power BI: L’importance du modèle en étoiles

Publié le 22 juin 2017 par Sopmar01 @mon_cher_watson

J’ai commencé à utiliser Power Pivot à sa sortie (add-in pour Excel 2010 à l’époque). Je me souviens  qu’au début, je n’étais pas certaine de comprendre pourquoi il était si important de construire un modèle de données en étoile (ou du moins un modèle qui ressemble le plus possible à un modèle en étoile) pour pouvoir utiliser Power Pivot adéquatement (et aujourd’hui Power BI). Au fil des ans, chaque fois que j’ai eu à répondre à des problématiques du côté de Power Pivot, je suis toujours revenue à la base et la réponse s’est souvent trouvée dans le fameux modèle en étoile, que certains usagers choisissent malheureusement d’ignorer. Le présent article vous présente un cas concret où se passer d’un modèle en étoile entraîne des problématiques dans le tableau croisé dynamique. Ceci vous permettra de réaliser, tout comme moi, l’importance de bien modéliser ses données avant de les analyser.

Données de départ

Pour illustrer le tout, nous allons utiliser les données de la table suivante. Notez que les données sont présentées par période et qu’il n’y a pas de dates associées.

Mesures en DAX

Supposons maintenant que vous décidez d’analyser cette table de données, sans créer de modèle de données en étoile et que vous y ajoutez les deux mesures suivantes:

Tableau croisé dynamique – Période 2

Lorsque vous analyserez les données dans un tableau croisé dynamique, à la période 2, l’information présentée sera exacte. On y  retrouvera les filiales en étiquettes de lignes et les mesures dans les valeurs. Notez qu’un tableau croisé dynamique qui ne comprendrait que les noms de filiales en étiquettes de lignes présenterait les filiales A, B et C.

Tableau croisé dynamique – Période 3

Toutefois, lorsque vous analyserez les données pour la période 3, vous rencontrerez un souci. En effet, en cliquant sur la période 3, dans le segment, vous ne verrez apparaître que les filiales B et C. Le total des ventes YTD sera le bon et considérera les ventes de la filiale A mais le tableau ne présentera pas ce résultat sur une ligne individuelle.

Explications

À la période 3, il n’y a aucune vente dans la filiale A. Toutefois, comme il y avait des ventes dans les périodes 1 et 2, il y a un montant de ventes YTD pour la filiale A, à la période 3. Mais comme vous demandez de filter votre tableau croisé dynamique selon la période 3, vous ne verrez pas la ligne représentant la filiale A. C’est comme si vous aviez filtré votre table sur la période 3. Vous n’auriez aucune ligne correspondant à la filiale A.

Solution

La solution sera de construire un modèle de données en étoile, avec notamment une dimension période et d’utiliser cette dimension dans votre segment et dans votre tableau croisé dynamique. Ça fait d’ailleurs partie des meilleures pratiques d’affaires avec Power Pivot.

Solution pas à pas : Power Query

Dans un premier temps, vous devez aller dans l’éditeur de requêtes et ajouter une clé de période dans votre table de transactions, tel qu’illustré ci-dessous.

Il s’agit simplement d’ajouter une colonne personnalisée avec l’information suivante:

Vous devez ensuite vous créer une dimension Filiale, une dimension Canal et une dimension Période, avec la même clé de période que dans votre table de transactions.

Pour créer ces tables de dimension, vous n’avez qu’à cliquer sur votre table de transactions avec le bouton droit de votre souris et choisir Reference. Vous ferez ainsi une référence à votre table de transactions. Ensuite, vous supprimez toutes les colonnes sauf la colonne de la dimension, par exemple Filiale, et vous supprimez les doublons.

Création du modèle en étoile

Finalement, vous créez un modèle de données en étoile comme le suivant:

Vous pouvez alors créer les mesures suivantes:

Notez qu’elles utilisent les périodes de la nouvelle table de dimension DimPériodes.

Résultat final

En utilisant les années et les périodes de la table de dimension DimPériodes dans les segments du tableau croisé dynamique et en utilisant les filiales de la table DimFiliales dans les lignes du tableau croisé dynamique, vous constaterez que les ventes YTD présenteront les bonnes informations, autant pour la période 2 que la période 3.

Ce sujet vous intéresse?

Si vous souhaitez mieux comprendre comment fonctionne Power Pivot et la modélisation de données, jetez un coup d’œil à notre formation Excel – Introduction à Power Pivot et aux modèles de données.


NOTRE OFFRE DE FORMATIONS


Le CFO masqué vous offre un vaste choix de formations Excel, notamment en tableaux de bord et en modélisation financière, ainsi qu’une série de formations en lien avec Power BI. Ces formations sont offertes en classe, en entreprise et en ligne. Nos formateurs sont des experts dans leur domaine et ils sont accrédités par Emploi-Québec et vous remettent un certificat, à la fin de chaque formation, que vous pouvez notamment utiliser pour faire reconnaître des heures de formation continue auprès de votre ordre professionnel. De plus, nos formations peuvent mener à l’obtention d’une accréditation.

Découvrez quelles formations vous conviennent

Pour info: 514-605-7112 ou info@lecfomasque.com