Actualisation incrémentielle Power BI Service / Desktop




Prérequis :

  • Power BI Desktop

  • Power Bi Service


En fonction de la volumétrie à mettre à jour sur vos dataset Power BI, le temps peut paraitre long...


Nous allons voir comment l'actualisation incrementielle permet de réduire de façon considerable les temps de mise à jour.



L'actualisation incrémentielle....whaaaat ?



  • Moins de cycles d’actualisation pour les données à changement rapide – le mode DirectQuery obtient les dernières mises à jour de données au fur et à mesure que les requêtes sont traitées sans nécessiter une cadence d’actualisation élevée.

  • Actualisations plus rapides : Seules les données les plus récentes qui ont changé ont besoin d’être actualisées.

  • Actualisations plus fiables : Des connexions de longue durée à des sources de données volatiles ne sont pas nécessaires. Les requêtes aux données sources s’exécutent plus rapidement, ce qui réduit le risque potentiel d’interférence entre les problèmes réseau.

  • Consommation réduite des ressources : Comme il y a moins de données à actualiser, la consommation globale de mémoire et d’autres ressources diminue dans les systèmes Power BI et de source de données.

  • Activation des jeux de données volumineux : Les jeux de données avec des milliards de lignes peuvent croître sans qu’il soit nécessaire d’actualiser entièrement l’ensemble du jeu de données avec chaque opération d’actualisation.

  • Installation facile : Les stratégies d’actualisation incrémentielle sont définies dans Power BI Desktop avec seulement quelques tâches. Une fois publiées, le service applique automatiquement ces stratégies à chaque actualisation.


1. Configurer Power Query



  • Ouvrir Power Query (transformer les données)

  • Créer 2 paramètres RangeStart et RangeEnd (respectez les majuscules)

















Note : Les valeurs actuelles à renseigner seront la plage de date disponible dans votre fichier .pbix de Power BI Desktop. Nous renseignerons par la suite les plages d'actualisations. Donc peu importe les valeurs que vous rentrerez ici !

  • Aller sur la colonne de date de votre table de fait

  • Mettre le type de la colonne impérativement en DateTime





  • Rajouter un filtre de date personnalisée à cette colonne de date














  • Appliquer et fermer Power Query

  • Clic droit sur la table de fait

  • Clic sur "Actualisation Incrementielle"

  • Configurer l'actualisation





















Une fois que les filtres ont été appliqués et qu’un sous-ensemble de données a été chargé dans le modèle, vous définissez une stratégie d’actualisation incrémentielle pour la table. Une fois le modèle publié sur le service, la stratégie est utilisée par le service pour créer et gérer des partitions de table et effectuer des opérations d’actualisation. Pour définir la stratégie, vous allez utiliser la boîte de dialogue Actualisation incrémentielle et données en temps réel pour spécifier les paramètres requis et les paramètres facultatifs.


Le paramètre Récupérer les données les plus récentes en temps réel avec DirectQuery (Premium uniquement) permet d’extraire les dernières modifications de la table sélectionnée au niveau de la source de données au-delà de la période d’actualisation incrémentielle avec DirectQuery. Toutes les lignes dont la Date/Heure est postérieure à la période d’actualisation incrémentielle sont incluses dans une partition DirectQuery et extraites de la source de données avec chaque requête de jeu de données.


Le paramètre Actualiser uniquement les jours complets permet de garantir que toutes les lignes de la journée entière sont incluses dans l’opération d’actualisation. Il est facultatif, à moins que le paramètre Récupérer les données les plus récentes en temps réel avec DirectQuery (Premium uniquement) ne soit activé. Supposons que vous avez planifié l’actualisation à 4 h 00 chaque matin. Si de nouvelles lignes de données s’affichent dans la table de source de données pendant les quatre heures comprises entre minuit et 4 h, il n’est pas nécessaire d’en tenir compte.

Un autre exemple est l’actualisation des données d’un système financier où les données du mois précédent sont approuvées le 12e jour calendaire du mois. Vous pouvez définir une période d’actualisation d’un mois et planifier l’actualisation le 12e jour du mois. Par exemple, avec cette option sélectionnée, les données du mois de janvier sont actualisées le 12 février.


Le paramètre Détecter les modifications de données permet une actualisation encore plus sélective. Vous pouvez sélectionner une colonne Date/Heure pour identifier et actualiser uniquement ces jours où les données ont changé. Cela suppose que cette colonne existe dans la source de données, généralement à des fins d’audit. Il ne doit pas s’agir de la même colonne que celle utilisée pour partitionner les données avec les paramètres RangeStart et RangeEnd. La valeur maximale de cette colonne est évaluée pour chacune des périodes définies dans la plage incrémentielle. Si cette valeur n’a pas changé depuis la dernière actualisation, la période n’a pas besoin d’être actualisée. Dans cet exemple, cela peut potentiellement réduire de trois à un les jours concernés par l’actualisation incrémentielle.


Goooo publier votre rapport et Power BI Service se chargera de faire le travail par la suite.


Note : La premiere actualisation sera la plus longue. Power BI Service chargera tout l'historique que vous avez demandé.
A partir de la deuxième actualisation, seule la plage de temps configurée sera actualisée.
A chaque republication du rapport, l'historique sera rechargé.



Alexis Dardaine - DGTL Performance


29 vues0 commentaire

Posts récents

Voir tout