Mise à jour d'une table de faits

Cette procédure explique comment créer un flux de données 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.

  1. Dans Enterprise Designer, sélectionnez Fichier > Nouveau > Flux de données > Job.
  2. 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
  3. 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.
  4. 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.
  5. Glissez un stage Broadcaster sur le canevas et connectez-lui le stage source.
    Votre flux de données prend maintenant la forme suivante :

  6. 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 flux de données 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.
  7. 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 :
    1. Dans le champ Connexion, indiquez la connexion à l'entrepôt de données.
    2. Dans le champ Table/Vue, sélectionnez la table de dimensions que vous souhaitez que ce stage interroge.
    3. Dans le champ , écrivez une instruction WHERE qui recherche la clé de substitution en fonction de la valeur champ de flux de données 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 champ product_name de la source de données.

      description=${product_name}
    4. 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 colonne description correspond à celle du champ de flux de données product_name. Le stage renvoie le champ product_key de la table et l'ajoute au flux de données, comme indiqué par la case cochée de la colonne Inclure.

  8. Glissez un stage Record Combiner sur le canevas et connectez-lui l'ensemble des stages Query DB.

    Votre flux de données prend maintenant la forme suivante :



  9. Glissez un stage Write to DB sur le canevas et connectez-le au stage Record Combiner.
    Votre flux de données prend maintenant la forme suivante :

  10. Configurez le stage Write to DB pour qu'il écrive les enregistrements dans la table de faits. Pour ce faire, procédez comme suit :
    1. Dans le champ Connexion, indiquez la connexion à l'entrepôt de données.
    2. 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.
    3. Pour chaque champ que vous souhaitez écrire dans la table de faits, cochez la case de la colonne Inclure.
    4. 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.