<aside> <img src="notion://custom_emoji/78174c83-1f3f-4efd-b747-08fa6d83ac8b/29f9c027-182e-8026-9010-007abfc171dc" alt="notion://custom_emoji/78174c83-1f3f-4efd-b747-08fa6d83ac8b/29f9c027-182e-8026-9010-007abfc171dc" width="40px" />

Jean-Louis Maso - Tous droits réservés

</aside>

Vue d'ensemble

La plupart des problèmes de performance dans Power BI sont en réalité des problèmes de taille de modèle. Le moteur VertiPaq compresse bien les données en mode Import, jusqu'à 10x, mais aucun algorithme ne peut compenser un modèle qui charge des colonnes, des lignes ou des hiérarchies de dates inutiles.

Akshay Mishra démontre dans un article de la publication Microsoft Power BI sur Medium (8 février 2025, récompensé Must-Read par la Power BI Masterclass Community) comment 5 modifications simples font passer un modèle de 169 Mo à environ 1 Mo, soit une réduction de 99 %. Chaque étape est mesurée avec DAX Studio et VertiPaq Analyzer.

Source : Akshay Mishra — 5 Simple Changes in Power BI to Reduce Data Model Size by 99%, Medium / Microsoft Power BI, 8 février 2025.

Lien : https://medium.com/microsoft-power-bi/5-simple-changes-in-power-bi-to-reduce-data-model-size-by-99-fb1d9b6f6dce


La progression étape par étape

Étape Action Taille après Gain
Départ Modèle brut 169 Mo
1 Désactiver Auto Date/Time 109 Mo − 60 Mo (− 36 %)
2 Supprimer les colonnes inutiles 36,6 Mo − 72 Mo (− 66 %)
3 Filtrer les lignes inutiles 36,5 Mo Gain marginal
4 Corriger les types de données 36,5 Mo Gain marginal
5 Agréger les données ~ 1 Mo − 35 Mo (− 97 %)

Les 5 actions en détail

1. Désactiver Auto Date/Time

Par défaut, Power BI génère automatiquement une table de dates cachée pour chaque colonne de type date. Ces tables masquées consomment beaucoup d'espace sans aucune valeur ajoutée si une table Calendrier personnalisée existe déjà dans le modèle.

Où désactiver cette option :

Fichier → Options et paramètres → Options → Chargement des données → décocher Date/heure automatique

Résultat mesuré : 169 Mo → 109 Mo (− 36 %)

2. Supprimer les colonnes inutiles

Les colonnes à haute cardinalité comme un champ RowID ou un identifiant unique par ligne sont particulièrement coûteuses : VertiPaq ne peut pas les compresser efficacement car chaque valeur est différente. Supprimer ces colonnes dans Power Query avant le chargement est la règle de base.

Principe général :