Principe |
Le mode de chargement permet de spécifier la manière dont la table de l'entrepôt est alimentée, et d'optimiser les temps d'ETL |
Accès |
Click droit sur le modèle -> "Propriétés d'un modèle" -> onglet "Chargement" -> propriété "Mode de chargement" |
Valeurs |
Choix du mode :
|
Il s'agit du mode d'ETL sélectionné par défaut.
Lors de l'ETL, la table est supprimée, recréée puis alimentée.
Fonctionnement
- Datawarehouse : DROP TABLE
- Datawarehouse : CREATE TABLE
- Source : SELECT
- Datawarehouse : INSERT
Ce mode d'ETL insère les données sources à la suite des données existantes dans l'entrepôt. Il peut être utilisé pour gérer de l'historisation d'informations.
Il est possible de définir un critère de suppression des enregistrements qui s'applique aux données existant dans l'entrepôt.
Ce mode ne permet pas de gérer la suppression dans l’entrepôt des données qui ne sont plus présentes dans la source de données.
Fonctionnement
- Datawarehouse : ALTER TABLE (Si la structure de la table ne correspond pas au paramétrage des champs destination)
- Datawarehouse : DELETE WHERE "critère de suppression"
- Source : SELECT
- Datawarehouse : INSERT
Important
Le critère de suppression n'est pas utilisé lors de l'insertion des données sources. Pour filtrer les données à insérer, il faut passer par les filtres du modèle
Ce mode d'ETL permet de ne recharger dans l'entrepôt que les données susceptibles d'avoir évolué.
Pour identifier ces enregistrements dans les données source et dans l'entrepôt, MyReport Data demande un critère de sélection et une clé primaire :
- MyReport requête la base source pour récupérer la liste des valeurs de clé primaire correspondant au "critère de sélection"
- MyReport supprime de l'entrepôt les données correspondant aux valeurs de la clé primaire récupérées précédemment
- MyReport requête la base source pour obtenir les enregistrements correspondants à la clé primaire, puis insère les données dans l'entrepôt.
Ce mode ne permet pas de gérer la suppression dans l’entrepôt des données qui ne sont plus présentes dans la source de données.
Fonctionnement
- Source : SELECT clé AS IdsATraiter WHERE "critère de sélection"
- Datawarehouse : DELETE WHERE clé IN IdsATraiter
- Source : SELECT... WHERE clé IN IdsATraiter
- Datawarehouse : INSERT
Tableau 12.2. Exemple :
Contexte : Mon logiciel de facturation contient les factures et leur date de dernière modification. Je souhaite n'intégrer dans mon entrepôt que les factures émises depuis mon dernier ETL réussi. Critère de sélection : [Date modification] >= ExtraitDate(DateETLOK) Date du jour lors du traitement des données : 10/09/2018 Date de dernier ETL réussi : 09/09/2018 Clé primaire : Id facture |
|
Ce mode permet de synchroniser les données d'un sous ensemble de l'entrepôt de données, via un critère de mise à jour facultatif.
Ce critère de mise à jour facultatif s'applique pour récupérer les enregistrements, triés selon la valeur de la clé primaire, existants dans la base source et dans l'entrepôt de donnée. Il ne peut être défini que sur un champ non transformé ou transformé SQL.
Ces enregistrements sont ensuite comparés un à un afin de déterminer l'action à mener (ajout, modification ou suppression)
Ce mode de chargement permet de supprimer de l'entrepôt les données qui n'existent plus dans les bases source.
Fonctionnement
- Source : SELECT champs WHERE "critère de mise à jour" ORDER BY "clé"
- Datawarehouse : SELECT champs WHERE "critère de mise à jour" ORDER BY "clé"
Parcours des listes Source et Datawarehouse sur le champ "clé"
Clé source > Clé datawarehouse : L'enregistrement Datawarehouse n'existe plus dans la source.
- Suppression de l'enregistrement du Datawarehouse : DELETE FROM... WHERE clé = Valeur_Clé_datawarehouse
- Passage à la clé suivante coté Datawarehouse
Clé source < Clé datawarehouse : L'enregistrement présent en source n'existe pas dans le Datawarehouse.
- Ajout de l'enregistrement au Datawarehouse : INSERT...
- Passage à la clé suivante coté Source
Clé source = Clé datawarehouse : comparaison et mise à jour de l'enregistrement dans le datawarehouse
- Comparaison des valeurs de l'enregistrement source et Datawarehouse
- Si différence, Mise à jour de l’enregistrement du Datawarehouse : UPDATE SET... WHERE Valeur_Clé_datawarehouse = Valeur_Clé_Source
- Passages aux clés suivantes (source et Datawarehouse)
Avertissement
Le tri des enregistrements selon leur clé primaire exploite les paramètres "Tri binaire délimiteur champ gauche" et "Tri binaire délimiteur champ droit" définis dans la des connexions source et de l’entrepôt de données, si le champ est de type texte. Il est impératif que les 2 bases renvoient les enregistrements triés dans le même ordre pour que ce mode d'ETL fonctionne.
Tableau 12.3. Exemple :