L'actualisation incrémentielle Power BI permet de charger uniquement les changements apportés aux données, plutôt que de remplacer toutes les données à chaque actualisation. Ceci permet de gagner du temps et d'économiser des ressources. Découvrez tout ce que vous devez savoir sur cette fonctionnalité !
Il existe deux façons principales de transférer les données d’un emplacement A vers un emplacement B. La première consiste à effacer toutes les données de l’emplacement B pour y charger toutes les données de l’emplacement A.
La seconde méthode est celle du chargement incrémentiel. Après avoir transféré une première fois toutes les données de l’emplacement A vers l’emplacement B, cette approche consiste à charger uniquement les changements apportés aux données de A vers B.
Les données de l’emplacement B ne sont donc jamais effacées ou remplacées. Seules les données qui n’ont pas encore été chargées de A vers B sont transférées.
Par défaut, lors d’une actualisation des données sur Power BI, c’est la première méthode qui est utilisée. Pour utiliser l’actualisation incrémentielle, il est d’abord nécessaire de la configurer.
Cette approche était autrefois disponible uniquement en mode « import » ou « double », mais les « tableaux hybrides » introduits en décembre 2021 ont tout changé.
Désormais, avec ce nouveau type de tableaux, le chargement incrémentiel est disponible sur une portion du tableau lorsqu’une partition spécifique est en mode « Direct Query » tandis que les autres partitions sont en mode de stockage « import ».
Par ailleurs, l’actualisation incrémentielle n’était autrefois disponible que pour les comptes Premium de Power BI. Depuis février 2020, cette option est aussi accessible pour les comptes Power BI Pro avec certaines restrictions.
Toutefois, les tableaux hybrides ne sont pour l’instant disponibles que pour les comptes Power BI Premium et Premium Par Utilisateur (PPU). Les comptes Power BI Pro ne peuvent profiter de cette fonctionnalité.
Avantages de l'actualisation incrémentielle : Quels sont-ils ?
L’actualisation incrémentielle apporte plusieurs avantages, notamment pour les larges tableaux à plusieurs centaines de millions de lignes. Elle permet tout d’abord d’actualiser les données beaucoup plus rapidement qu’avec la méthode de troncature et chargement, puisque seules les données de gamme incrémentielle sont actualisées.
De même, le processus d’actualisation incrémentielle des données consomme beaucoup moins de ressources que l’actualisation de toutes les données. Cette actualisation est moins coûteuse, et plus simple à maintenir.
Sur des datasets massifs à plusieurs milliards de lignes, l’actualisation incrémentielle est tout bonnement indispensable. Pour cause, Power BI Desktop utilise la mémoire de la machine locale pour traiter les données et il est improbable qu’un simple ordinateur ait suffisamment de mémoire pour importer un tel volume de données.
Comment fonctionne l'actualisation incrémentielle ?
Après avoir publié le modèle sur Power BI Service, le service crée de multiples partitions sur le tableau avec des stratégies incrémentielles basées sur l’année, le mois ou le jour.
En fonction de la stratégie incrémentielle définie, les partitions sont automatiquement actualisées à condition de planifier le rafraîchissement automatique. Au fil du temps, certaines de ces partitions seront abandonnées et d’autres seront fusionnées entre elles.
Après avoir configuré l’actualisation incrémentielle sur Power BI, on obtient deux gammes de données : la gamme historique, et la gamme incrémentielle. La gamme historique regroupe toutes les données traitées dans le passé, tandis que la gamme incrémentielle rassemble les données à traiter actuellement.
Seules les données de la gamme incrémentielle sont concernées par l’actualisation incrémentielle. Les données historiques ne seront pas prises en charge. De nouvelles lignes peuvent être insérées, mises à jour ou supprimées du tableau.
Au moment de définir une stratégique incrémentielle, on définit une gamme de dates. Il s’agit de la gamme historique. Les données comprises entre ces deux dates ne seront pas modifiées. Avec le temps, certaines partitions anciennes seront abandonnées et d’autres partitions seront transférées vers la gamme historique.
À l’inverse, les données comprises entre les dates de la gamme incrémentielle seront actualisées fréquemment. Quand de nouvelles partitions sont créées, les anciennes partitions ne faisant plus partie de la gamme incrémentielle rejoignent les partitions historiques.
Comment implémenter l'actualisation incrémentielle ?
L’actualisation incrémentielle peut être configurée sur Power BI Destkop, et dans les Dataflows contenus dans un espace de travail Premium. Après l’implémentation sur Power BI Destkop, le modèle est publié sur Power BI Service.
La première actualisation prend plus longtemps, puisque toutes les données sont transférées pour la première fois depuis leurs sources vers Power BI Service. Par la suite, après ce premier chargement, toutes les futures actualisations seront incrémentielles.
L’implémentation de l’actualisation incrémentielle se déroule en deux parties. Dans un premier temps, il est nécessaire de préparer les pré-requis sur Power Query et de définir les règles dans le modèle de données. L’étape suivante est la publication du modèle sur Power BI Service et l’actualisation du dataset.
Pour préparer les pré-requis sur Power Query, on commence par défini deux paramètres avec le type de données DateTime dans Power Query Editor. Les noms de ces deux paramètres sont RangeStart et RangeEnd. Ils permettent de définir les règles d’actualisation incrémentielle.
Par la suite, on filtre le tableau par une colonne DateTime en utilisant les paramètres RangeStart et RangeEnd quand la valeur de la colonne DateTime est comprise entre RangeStart et RangeEnd.
Après avoir terminé la préparation initiale sur Power Query, il faut définir la stratégie d’actualisation incrémentielle sur le modèle de données dans Power BI Desktop. Il suffit ensuite de publier le modèle sur Power BI Service pour pouvoir commencer l’actualisation incrémentielle du dataset.
Les réglages optionnels
La fenêtre de configuration de l’actualisation incrémentielle contient une section dédiée aux réglages optionnels. Voici un tour d’horizon des fonctionnalités disponibles.
Sur un compte Premium, vous pouvez obtenir les dernières données en temps réel avec DirectQuery. Cette fonctionnalité permet à la partition de données la plus récente de se connecter au système source via Direct Query.
Un autre réglage optionnel permet d’inclure des périodes complètes dans l’actualisation. Ces périodes peuvent être des années, des mois ou des jours selon la gamme d’actualisation choisie dans les précédents réglages. Lors de l’actualisation, seules les données des périodes complétées seront incluses.
Le dernier réglage optionnel permet de détecter les changements de données. En effet, dans un grand nombre de processus d’intégration de données ou de Data Warehousing, des colonnes d’audit sont ajourées aux tableaux pour des métadonnées utiles comme la date de dernière modification ou l’utilisateur qui en est à l’origine. La détection de données sur Power BI est très utile si votre tableau comporte une colonne DateTime indiquant les changements de données.
Cette option permet de sélectionner la colonne d’audit souhaitée, qui ne peut pas être la même colonne que celle utilisée pour créer les partitions avec les paramètres RangeStart et RangeEnd. Pour chaque période d’actualisation planifiée, Power BI considère la valeur maximale de la colonne avec la gamme incrémentielle pour détecter les changements survenus sur cette période.
Publier le modèle sur Power BI Service
Publier le modèle sur Power BI Service consiste à publier le fichier de rapport Power BI Desktop (PBIX) contenant le modèle de données et l’éventuel rapport sur Power BI Service.
Il existe plusieurs méthodes pour y parvenir. La plus populaire est de cliquer sur le bouton « Publier » depuis l’onglet d’accueil, de sélectionner l’espace de travail sur lequel publier le modèle, et de cliquer sur le bouton « Sélectionner ».
Généralement, les actualisations de données automatiques sont planifiées depuis Power BI Service. En effet, l’actualisation incrémentielle n’est pertinente qu’en cas d’actualisation fréquente des données.
Actualiser le dataset sur Power BI Service
Maintenant que le modèle est publié, il ne reste plus qu’à se rendre sur Power BI Service pour actualiser le dataset. Si vous avez utilisé une source de données sur site, vous devez configurer le Data Gateway On-Premise.
Ensuite, ouvrez Power BI Service et rendez-vous sur l’espace de travail souhaité. Sélectionnez le dataset, et cliquez sur le bouton d’actualisation.
Après une première actualisation du dataset sur Power BI Service, il n’est plus possible de télécharger le rapport. Cette contrainte est logique, car une machine locale ne serait pas capable de télécharger les milliards de lignes de données chargées incrémentielles dans le tableau. Plusieurs centaines de gigabytes de RAM seraient nécessaires.
Pour effectuer des changements ultérieurs sur le modèle de données, il est donc obligatoire d’utiliser d’autres outils que Power BI Desktop pour déployer les changements sur le dataset existant. En guise d’exemples, on peut citer Tabular Editor, ALM Toolkit ou SQL Server Management Studio (SSMS). Ces outils doivent être connectés au dataset à l’aide de endpoints XMLA disponibles uniquement sur Power BI Premium et PPU.
Les tableaux hybrides
Si vous avez besoin de données actualisées en temps réel ou presque sur un large tableau, vous pouvez utiliser les tableaux hybrides. Un tel tableau peut accueillir à la fois les données importées et DirectQuery.
Ceci permet une actualisation des données en temps réel, tout en bénéficiant de performances maximales sur Power BI.
Les tableaux hybrides sont partitionnés. Leur partition la plus récente est une DirectQuery provenant de la source de données, et leurs données historiques sont importées à partir d’autre partition.
Il ne s’agit pas d’un mode de stockage Double, mais d’un tableau dont une partie est importée et l’autre est DirectQuery. L’option de tableau hybride peut uniquement être appliquée à un tableau pour lequel l’actualisation incrémentielle est activée.
Pour l’activer, une licence Power BI Premium ou PPU est indispensable et le dataset doit être publié sur un espace de travail Premium ou PPU. Sélectionnez l’option « obtenir les dernières données en temps réel avec DirectQuery ». Par la suite, vous pourrez voir la période de données en temps réel et un diagramme indiquant la chronologie.
Comment apprendre à maîtriser Power BI ?
L’actualisation incrémentielle est l’une des nombreuses fonctionnalités méconnues de Power BI. Afin d’apprendre à maîtriser ce logiciel et toutes ses subtilités, vous pouvez choisir DataScientest.
Notre formation Power BI se décompose en deux parties : débutant et avancé. La première partie s’adresse aux débutants souhaitant découvrir l’outil, et permet d’apprendre à utiliser les fonctionnalités comme DAX et Power Query. Elle se complète en 24 heures, réparties sur 3 jours.
La seconde partie est conçue pour les utilisateurs avancés, et permet d’approfondir le maniement de chaque fonctionnalité Power BI. Vous découvrirez notamment les concepts les plus complexes comme l’actualisation incrémentielle et les DataFlows. Le programme se complète en 14 heures réparties sur 2 jours.
Si vous êtes débutant et souhaitez maîtriser Power BI à la perfection, vous pouvez choisir le cursus Maîtrise Complète regroupant les deux parties de la formation. Il s’effectue en 38 heures réparties sur 5 jours.
En tant que Microsoft Learning Partner, DataScientest vous prépare à l’examen PL-300 et vous fait passer cette épreuve permettant d’obtenir la certification Power BI Data Analyst Associate.
Pour le financement, notre organisme reconnu par l’État est éligible au CPF (Compte Personnel de Formation). N’attendez plus et découvrez DataScientest !
Vous savez tout sur l’actualisation incrémentielle sur Power BI. Pour plus d’informations sur le même sujet, découvrez notre dossier complet sur Power BI et notre dossier sur le moteur Power Query.