Cette procédure explique comment créer un dataflow qui lit les données d'une base de données ou d'un fichier source et utilise ces données pour mettre à jour une table de faits de votre entrepôt de données.
- Dans Enterprise Designer, sélectionnez Fichier > Nouveau > Dataflow > Job.
-
Suivant la source des données que vous souhaitez écrire dans la table de faits, glissez le stage approprié sur le canevas.
- Pour utiliser des données d'une base de données pour renseigner la table, glissez le stage Read from DB sur le canevas.
- Pour utiliser des données d'un fichier plat pour renseigner la table, glissez le stage Read from File sur le canevas.
- Pour utiliser des données d'un fichier de format variable pour renseigner la table, glissez le stage Read from Variable Format File sur le canevas.
- Pour utiliser des données d'un fichier XML pour renseigner la table, glissez le stage Read from XML sur le canevas.
Remarque : Si vous souhaitez lire les données d'un fichier et non d'une base de données, assurez-vous que le fichier contient uniquement les nouveaux enregistrements que vous souhaitez ajouter à la table de faits et qu'il ne contient pas d'enregistrements existant déjà dans la table de faits. Si vous souhaitez lire les données d'une table de données, vous devez définir une requête pour filtrer ultérieurement les enregistrements au cours de cette procédure -
Double-cliquez sur le stage source que venez de placer sur le canevas et configurez-le pour qu'il pointe vers la source des données avec lesquelles vous souhaitez renseigner la table de faits.
- Pour plus d'informations sur la configuration de Read from DB, reportez-vous à la section Read From DB.
- Pour plus d'informations sur la configuration de Read from File, reportez-vous à la section Read from file.
- Pour plus d'informations sur la configuration de Read from Variable Format File, reportez-vous à la section Read from Variable Format File.
- Pour plus d'informations sur la configuration de Read from XML, reportez-vous à la section Read From XML.
- Si vous souhaitez lire les données d'une base de données, filtrez les enregistrements de sorte que seuls les enregistrements nouveaux soient ajoutés à la table de faits. Pour ce faire, définissez l'instruction SQL SELECT de sorte qu'elle lise uniquement les enregistrements qui ont été modifiés depuis la dernière mise à jour de la table de faits.
-
Glissez un stage Broadcaster sur le canevas et connectez-lui le stage source.
Votre dataflow prend maintenant la forme suivante :
-
Glissez un stage Query DB sur le canevas pour chaque table de dimensions de votre entrepôt de données et connectez-les au stage Broadcaster.
Par exemple, si votre entrepôt de données comporte quatre tables de dimensions, glissez quatre stages Query DB sur le canevas. Votre dataflow prend maintenant la forme suivante :
Les stages Query DB sont utilisés pour rechercher la clé de substitution pour chaque dimension utilisant la clé naturelle de la source de données. La clé de substitution vient ensuite remplacer la clé naturelle dans chaque enregistrement chargé dans la table de faits.
Conseil : Pour connaître facilement la table interrogée par chaque stage, vous pouvez modifier le nom du stage. -
Configurez chaque stage Query DB de sorte qu'il recherche la clé de substitution pour chaque clé naturelle de la source de données. Pour ce faire, procédez comme suit :
- Dans le champ Connexion, indiquez la connexion à l'entrepôt de données.
- Dans le champ Table/Vue, sélectionnez la table de dimensions que vous souhaitez que ce stage interroge.
-
Dans le champ Où, écrivez une instruction WHERE qui recherche la clé de substitution en fonction de la valeur champ de dataflow approprié.
L'exemple suivant recherche la clé de substitution d'un produit en trouvant l'enregistrement de la table de dimensions dont la valeur de la colonne
description
correspond à la valeur du champproduct_name
de la source de données.description=${product_name}
- Dans la colonne Inclure, sélectionnez la colonne de base de données contenant la clé de substitution.
Par exemple, un stage Query DB qui recherche la clé de substitution d'un nom de produit ressemble à l'exemple suivant :
Dans cet exemple, la requête recherche la clé de produit en trouvant l'enregistrement de la table
prod_dimension
dont la valeur de la colonnedescription
correspond à celle du champ de dataflowproduct_name
. Le stage renvoie le champproduct_key
de la table et l'ajoute au dataflow, comme indiqué par la case cochée de la colonne Inclure. -
Glissez un stage Record Combiner sur le canevas et connectez-lui l'ensemble des stages Query DB.
Votre dataflow prend maintenant la forme suivante :
-
Glissez un stage Write to DB sur le canevas et connectez-le au stage Record Combiner.
Votre dataflow prend maintenant la forme suivante :
-
Configurez le stage Write to DB pour qu'il écrive les enregistrements dans la table de faits. Pour ce faire, procédez comme suit :
- Dans le champ Connexion, indiquez la connexion à l'entrepôt de données.
- Dans le champ Table/Vue, sélectionnez la table de faits que vous souhaitez que ce stage interroge. Si la table de faits n'existe pas déjà dans l'entrepôt de données, cliquez sur Créer une table pour la créer.
- Pour chaque champ que vous souhaitez écrire dans la table de faits, cochez la case de la colonne Inclure.
- Dans l'onglet Exécution, notez que, par défaut, l'option Insérer est sélectionnée comme mode d'écriture. En règle générale, le renseignement de la table de faits est exécuté en mode d'insertion ; vous pouvez donc laisser cette option sélectionnée.