Workflow est un groupe d'instructions / commandes pour le service d'intégration dans Informatica. Le service d'intégration est une entité qui lit les informations de flux de travail à partir du référentiel, récupère les données des sources et, après avoir effectué la transformation, les charge dans la cible.
Workflow - Il définit comment exécuter des tâches telles que la tâche de session, la tâche de commande, la tâche de courrier électronique , etc.
Pour créer un workflow
- Vous devez d'abord créer des tâches
- Et puis ajoutez ces tâches au flux de travail.
Un workflow est comme un conteneur vide, qui a la capacité de stocker un objet que vous souhaitez exécuter. Vous ajoutez des tâches au flux de travail que vous souhaitez exécuter. Dans ce didacticiel, nous allons faire les choses suivantes dans le flux de travail.
L'exécution du workflow peut être effectuée de deux manières
- Séquence : les tâches s'exécutent dans l'ordre dans lequel elles sont définies
- Basé sur les événements : les tâches sont exécutées en fonction des conditions de l'événement.
Comment ouvrir Workflow Manager
Étape 1 - Dans Informatica Designer, cliquez sur l'icône du gestionnaire de flux de travail
Étape 2 - Cela ouvrira une fenêtre de Workflow Manager. Ensuite, dans le gestionnaire de flux de travail.
- Nous allons nous connecter au référentiel "guru99", donc double-cliquez sur le dossier pour vous connecter.
- Saisissez le nom d'utilisateur et le mot de passe, puis sélectionnez "Bouton de connexion".
Étape 3 - Dans le gestionnaire de flux de travail.
- Faites un clic droit sur le dossier
- Dans le menu contextuel, sélectionnez l'option Ouvrir
Cela ouvrira l'espace de travail de Workflow Manager.
Comment créer des connexions pour Workflow Manager
Pour exécuter une tâche dans le gestionnaire de flux de travail, vous devez créer des connexions . En utilisant ces connexions, Integration Service se connecte à différents objets.
Par exemple, dans votre mappage, si vous avez une table source dans la base de données oracle, vous aurez besoin d'une connexion oracle pour que le service d'intégration puisse se connecter à la base de données oracle pour récupérer les données source.
Les types de connexions suivants peuvent être créés dans le gestionnaire de flux de travail.
- Connexion relationnelle
- Connexion FTP
- File d'attente
- Application
Le choix de la connexion que vous allez créer dépendra du type de systèmes source et cible que vous souhaitez connecter. Plus souvent, vous utiliseriez des connexions relationnelles.
Pour créer une connexion relationnelle
Étape 1 - Dans Workflow Manager
- Cliquez sur le menu Connexion
- Sélectionnez l'option relationnelle
Étape 2 - Dans la fenêtre contextuelle
- Sélectionnez Oracle dans le type
- Cliquez sur le nouveau bouton
Étape 3 - Dans la nouvelle fenêtre de définition de l'objet de connexion
- Entrez le nom de la connexion (nouveau nom-guru99)
- Saisissez votre nom d'utilisateur
- Entrer le mot de passe
- Entrez la chaîne de connexion
- Laissez les autres paramètres par défaut et sélectionnez le bouton OK
Étape 4 - Vous reviendrez sur la fenêtre précédente. Cliquez sur le bouton de fermeture.
Vous êtes maintenant configuré avec la connexion relationnelle dans le gestionnaire de flux de travail.
Composants du gestionnaire de flux de travail
Il existe trois outils de composant du gestionnaire de flux de travail qui aident à créer divers objets dans le gestionnaire de flux de travail. Ces outils sont
- Développeur de tâches
- Concepteur de worklet
- Concepteur de flux de travail
Développeur de tâches - Le développeur de tâches est un outil à l'aide duquel vous pouvez créer des objets réutilisables. Les objets réutilisables dans le gestionnaire de flux de travail sont des objets qui peuvent être réutilisés dans plusieurs flux de travail. Par exemple, si vous avez créé une tâche de commande dans le développeur de tâches, vous pouvez réutiliser cette tâche dans n'importe quel nombre de flux de travail.
Le rôle du concepteur de flux de travail est d'exécuter les tâches qui y sont ajoutées. Vous pouvez ajouter n'importe quelle tâche dans un flux de travail.
Vous pouvez créer trois types de tâches réutilisables dans le développeur de tâches.
- Tâche de commande
- Tâche de session
- Tâche e-mail
Tâche de commande - Une tâche de commande est utilisée pour exécuter différentes commandes windows / unix pendant l'exécution du flux de travail. Vous pouvez créer une tâche de commande pour exécuter diverses tâches basées sur des commandes. Avec l'aide de cette tâche, vous pouvez exécuter des commandes pour créer des fichiers / dossiers, pour supprimer des fichiers / dossiers, pour faire du ftp de fichiers, etc.
Tâche de session - Une tâche de session dans Informatica est requise pour exécuter un mappage.
- Sans tâche de session, vous ne pouvez pas exécuter ou exécuter un mappage
- Une tâche de session ne peut exécuter qu'un seul mappage. Il existe donc une relation un à un entre un mappage et une session
- Une tâche de session est un objet à l'aide duquel informatica apprend comment et où exécuter un mappage et à quel moment
- Les sessions ne peuvent pas être exécutées indépendamment, une session doit être ajoutée à un workflow
- Dans la session, les propriétés du cache d'objets peuvent être configurées ainsi qu'une configuration avancée d'optimisation des performances.
Tâche de courrier électronique - Avec l'aide de la tâche de courrier électronique, vous pouvez envoyer un courrier électronique à des destinataires définis lorsque le service d'intégration exécute un flux de travail. Par exemple, si vous souhaitez surveiller la durée d'une session, vous pouvez configurer la session pour envoyer un e-mail contenant les détails de l'heure de début et de fin de session. Ou, si vous souhaitez que Integration Service vous avertisse lorsqu'un flux de travail se termine / échoue, vous pouvez configurer la tâche de courrier électronique pour la même chose.
Comment créer une tâche de commande
Étape 1 - Pour créer une tâche de commande, nous allons utiliser Task Developer. Dans Workflow Manager, ouvrez le développeur de tâches en cliquant sur l'onglet "développeur de tâches" dans le menu.
Étape 2 - Une fois le développeur de tâches ouvert, procédez comme suit
- Sélectionnez le menu Tâches
- Sélectionnez l'option Créer
Étape 3 - Dans la fenêtre de création de tâche
- Sélectionnez la commande comme type de tâche à créer
- Entrez le nom de la tâche
- Sélectionnez le bouton Créer
Cela créera un dossier de tâches de commande. Vous devez maintenant configurer la tâche pour y ajouter une commande, que nous verrons à l'étape suivante.
Étape 4 - Pour configurer la tâche, double-cliquez sur l'icône de la tâche de commande et cela ouvrira une "fenêtre d'édition de la tâche". Dans la nouvelle fenêtre de tâche d'édition
- Sélectionnez le menu des commandes
- Cliquez sur l'icône Ajouter une nouvelle commande
- Entrez le nom de la commande
- Cliquez sur l'icône de commande pour ajouter le texte de la commande
Cela ouvrira une boîte d'éditeur de commandes.
Étape 5 - Sur la boîte de l'éditeur de commandes, entrez la commande "mkdir C: \ guru99" (c'est la commande Windows pour créer un dossier nommé "guru99") et sélectionnez OK.
Après cette étape, vous retournerez à la fenêtre d'édition des tâches et vous pourrez voir la commande que vous avez ajoutée à la zone de texte de la commande.
Étape 6 - Cliquez sur OK dans la fenêtre d'édition de la tâche,
La tâche de commande sera créée dans le développeur de tâches sous le référentiel "Guru99".
Remarque - utilisez le raccourci ctrl + s pour enregistrer les modifications dans le référentiel
Comment créer un workflow pour exécuter une tâche de commande
Pour exécuter des commandes, vous devez activer le concepteur de flux de travail. Un concepteur de flux de travail est un objet parent ou conteneur dans lequel vous pouvez ajouter plusieurs tâches et lorsque le flux de travail est exécuté, toutes les tâches ajoutées s'exécutent. Pour créer un workflow
Étape 1 - Ouvrez le concepteur de flux de travail en cliquant sur le menu du concepteur de flux de travail
Étape 2 - Dans le concepteur de flux de travail
- Sélectionnez le menu des workflows
- Sélectionnez l'option de création
Étape 3 - Dans la fenêtre de création de flux de travail
- Entrez le nom du workflow
- Sélectionnez le bouton OK (laissez les autres options par défaut)
Cela créera le flux de travail.
Convention de dénomination - Les noms de flux de travail sont préfixés par l'utilisation de « wkf_» , si vous avez une session nommée « s_m_employee_detail », le flux de travail correspondant peut être nommé « wkf_s_m_employee_detail» .
Lorsque vous créez un flux de travail, il ne comprend aucune tâche. Ainsi, pour exécuter une tâche dans un flux de travail, vous devez y ajouter une tâche.
Étape 4 - Pour ajouter une tâche de commande que nous avons créée dans le développeur de tâches au desinger de flux de travail
- Dans l'arborescence du navigateur, développez le dossier des tâches
- Faites glisser et déposez la tâche de commande dans le concepteur de flux de travail
Étape 5 - Sélectionnez l '"option de tâche de lien" dans la boîte à outils dans le menu supérieur. (L'option de lien de tâche relie diverses tâches d'un flux de travail à la tâche de démarrage, de sorte que l'ordre d'exécution des tâches puisse être défini).
Étape 6 - Une fois que vous sélectionnez l'icône de la tâche de lien, cela vous permettra de faire glisser le lien entre la tâche de démarrage et la tâche de commande. Sélectionnez maintenant la tâche de démarrage et faites glisser un lien vers la tâche de commande.
Vous êtes maintenant prêt avec le flux de travail ayant une tâche de commande à exécuter.
Comment exécuter le workflow
Étape 1 - Pour exécuter le workflow
- Sélectionnez l'option de flux de travail dans le menu
- Sélectionnez l'option de démarrage du flux de travail
Cela ouvrira la fenêtre du moniteur de flux de travail et exécutera le flux de travail
Une fois le workflow exécuté, il exécutera la tâche de commande pour créer un dossier (dossier guru99) dans le répertoire défini.
Tâche de session
Une tâche de session dans Informatica est requise pour exécuter un mappage.
Sans tâche de session, vous ne pouvez pas exécuter ou exécuter un mappage et une tâche de session ne peut exécuter qu'un seul mappage. Il existe donc une relation un à un entre un mappage et une session. Une tâche de session est un objet à l'aide duquel Informatica sait comment et où exécuter un mappage et à quel moment. Les sessions ne peuvent pas être exécutées indépendamment, une session doit être ajoutée à un workflow. Dans la session, les propriétés du cache d'objets peuvent être configurées ainsi qu'une configuration avancée d'optimisation des performances.
Comment créer une tâche de session.
Dans cet exercice, vous allez créer une tâche de session pour le mappage "m_emp_emp_target" que vous avez créé dans l'article précédent.
Étape 1 - Ouvrez le gestionnaire de flux de travail et ouvrez le développeur de tâches
Étape 2 - Maintenant, une fois que le développeur de tâches s'ouvre, dans le gestionnaire de flux de travail, accédez au menu principal
- Cliquez sur le menu des tâches
- Sélectionnez l'option de création
Cela ouvrira une nouvelle fenêtre "Créer une tâche"
Étape 3 - Dans la fenêtre de création de tâche
- Sélectionnez la tâche de session comme type de tâche.
- Entrez le nom de la tâche.
- Cliquez sur le bouton Créer
Étape 4 - Une fenêtre de sélection du mappage apparaîtra. Sélectionnez le mappage que vous souhaitez associer à cette session, pour cet exemple, sélectionnez le mappage "m_emp_emp_target" et cliquez sur le bouton OK.
Étape 5 - Après cela, cliquez sur le bouton "Terminé"
L'objet de session apparaîtra dans le développeur de tâches
Étape 6 - Dans cette étape, vous allez créer un flux de travail pour la tâche de session. Cliquez sur l'icône du concepteur de flux de travail.
Étape 7 - Dans l'outil de conception de flux de travail
- Cliquez sur le menu de workflow
- Sélectionnez l'option de création
Étape 8 - Dans la fenêtre de création de flux de travail
- Entrez le nom du workflow
- Sélectionnez OK. (laissez les autres propriétés par défaut, pas besoin de modifier les propriétés)
Dans le gestionnaire de flux de travail, une tâche de démarrage apparaîtra, c'est un point de départ de l'exécution du flux de travail.
Étape 9 - Dans le gestionnaire de flux de travail
- Développez le dossier sessions sous l'arborescence de navigation.
- Faites glisser et déposez la session que vous avez créée dans l'espace de travail du gestionnaire de flux de travail.
Étape 10 - Cliquez sur l'option de tâche de lien dans la boîte à outils.
Étape 11 - Liez la tâche de démarrage et la tâche de session à l'aide du lien.
Étape 12 - Double-cliquez sur l'objet de session dans le gestionnaire wokflow. Cela ouvrira une fenêtre de tâche pour modifier les propriétés de la tâche.
Étape 13 - Dans la fenêtre de tâche d'édition
- Sélectionnez l'onglet de mappage
- Sélectionnez la propriété de connexion
- Attribuez la connexion à la source et à la cible, la connexion que nous avons créée au début.
- Sélectionnez le bouton OK
Votre configuration du flux de travail est maintenant terminée et vous pouvez exécuter le flux de travail.
Comment ajouter plusieurs tâches à une tâche de démarrage
La tâche de démarrage est un point de départ pour l'exécution du workflow. Il existe deux façons de lier plusieurs tâches à une tâche de démarrage.
- Parallèle
- En série
En parallèle, les tâches sont liées directement à la tâche de démarrage et toutes les tâches commencent à s'exécuter en parallèle en même temps.
Comment ajouter des tâches en parallèle
Étape 1 - Dans le gestionnaire de workflow, ouvrez le workflow "wkf_run_command"
Étape 2 - Dans le workflow, ajoutez la tâche de session "s_m_emp_emp_target". (en sélectionnant session puis en faisant glisser et déposer)
Étape 3 - Sélectionnez l'option de tâche de lien dans la boîte à outils
Étape 4 - liez la tâche de session à la tâche de démarrage (en cliquant sur démarrer les tâches, en maintenant le clic et en vous connectant à la tâche de session)
Après avoir lié la tâche de session, le flux de travail ressemblera à ceci.
Étape 5 - Démarrez le flux de travail et surveillez dans le moniteur de flux de travail.
Comment ajouter des tâches en mode série
Mais avant d'ajouter des tâches en mode série, nous devons supprimer la tâche que nous avons ajoutée pour démontrer l'exécution parallèle de la tâche. Pour ça
Étape 1 - Ouvrez le workflow "w.kf_run_command"
- Sélectionnez le lien vers la tâche de session.
- Sélectionnez l'option d'édition dans le menu
- Sélectionnez l'option de suppression
Étape 2 - La boîte de dialogue de confirmation apparaîtra dans une fenêtre, sélectionnez l'option Oui
Le lien entre la tâche de démarrage et la tâche de session sera supprimé.
Étape 3 - Maintenant, allez à nouveau dans le menu supérieur et sélectionnez l'option de tâche de lien dans la boîte à outils
Étape 4 - Liez la tâche de session à la tâche de commande
Après avoir lié le flux de travail ressemblera à ceci
Étape 5 - Pour rendre l'apparence visuelle du flux de travail plus claire
- Faites un clic droit sur le wokspace du workflow
- Sélectionnez le menu organiser
- Sélectionnez l'option horizontale
Si vous démarrez le workflow, la tâche de commande s'exécutera en premier et après son exécution, la tâche de session démarrera.
Variable de flux de travail
Les variables de flux de travail permettent à différentes tâches d'un flux de travail d'échanger des informations entre elles et permettent également aux tâches d'accéder à certaines propriétés d'autres tâches dans un flux de travail. Par exemple, pour obtenir la date actuelle, vous pouvez utiliser la variable intégrée "sysdate".
Le scénario le plus courant est lorsque vous avez plusieurs tâches dans un flux de travail et que dans une tâche, vous accédez à la variable d'une autre tâche. Par exemple, si vous avez deux tâches dans un flux de travail et que la condition est d'exécuter la deuxième tâche uniquement lorsque la première tâche est exécutée avec succès. Vous pouvez implémenter un tel scénario en utilisant une variable prédéfinie dans le workflow.
Mettre en œuvre le scénario
Nous avions un workflow "wkf_run_command" avec des tâches ajoutées en mode série. Nous allons maintenant ajouter une condition au lien entre la tâche de session et la tâche de commande, de sorte que, seulement après le succès de la tâche de commande, la tâche de session sera exécutée.
Étape 1 - Ouvrez le workflow "wkf_run_command"
Étape 2 - Double-cliquez sur le lien entre la session et la tâche de commande
Une fenêtre d'expression apparaîtra
Étape 3 - Double-cliquez sur la variable d'état dans le menu "cmd_create_folder". Une variable "$ cmd_create_folder.status" apparaîtra dans la fenêtre de l'éditeur sur le côté droit.
Étape 4 - Nous allons maintenant définir la condition de la variable "$ cmd_create_folder.status" sur l'état de réussite. ce qui signifie que lorsque les tâches précédentes sont exécutées et que l'exécution a réussi, exécutez uniquement la tâche de session suivante.
- Remplacez la variable par la valeur "$ cmd_create_folder.status = SUCCEEDED".
- Cliquez sur le bouton OK
Le flux de travail ressemblera à ceci
Lorsque vous exécutez ce flux de travail, la tâche de commande s'exécute en premier et seulement lorsqu'elle réussit, puis seule la tâche de session sera exécutée.
Paramètre de flux de travail
Les paramètres de workflow sont les valeurs qui restent constantes tout au long de l'analyse. une fois leur valeur attribuée, elle reste la même. Les paramètres peuvent être utilisés dans les propriétés de workflow et leurs valeurs peuvent être définies dans des fichiers de paramètres. Par exemple, au lieu d'utiliser une valeur de connexion codée en dur, vous pouvez utiliser un paramètre / une variable dans le nom de la connexion et une valeur peut être définie dans le fichier de paramètres.
Les fichiers de paramètres sont les fichiers dans lesquels nous définissons les valeurs des variables ou paramètres de mappage / workflow. Ces fichiers ont l'extension ".par". En règle générale, un fichier de paramètres est créé pour un flux de travail.
Avantages du fichier de paramètres
- Aide à la migration du code d'un environnement à un autre
- Permet un débogage et des tests faciles
- Les valeurs peuvent être modifiées facilement sans changement de code
Structure du fichier de paramètres
La structure du fichier de paramètres
- [nom_dossier.WF:Nom_Workflow]
- $ Nom_paramètre = valeur_paramètre
Folder_name est le nom du dossier du référentiel, le nom du workflow est le nom du workflow pour lequel vous créez le fichier de paramètres.
Nous allons créer un fichier de paramètres pour la connexion à la base de données "guru99" que nous avons attribué dans nos premières sessions pour les sources et les cibles.
Comment créer un fichier de paramètres
Étape 1 - Créez un nouveau fichier vide (fichier bloc-notes)
Étape 2 - Dans le fichier, entrez le texte comme indiqué sur la figure
Étape 3 - Enregistrez le fichier sous un dossier guru99 à l'emplacement "C: \ guru99" sous "wkf_run_command.par"
Dans le fichier, nous avons créé un paramètre "$ DBConnection_SRC", nous attribuerons le même à une connexion dans notre flux de travail.
Étape 4- Ouvrez le workflow "wkf_run_command"
- Sélectionnez le menu des workflows
- Sélectionnez l'option d'édition
Étape 5 - Cela ouvrira la fenêtre d'édition du flux de travail, dans cette fenêtre
- Aller au menu de l'onglet Propriétés
- Entrez le nom du fichier de paramètres sous la forme "c: \ guru99 \ wkf_run_command.par"
- Sélectionnez le bouton OK
Nous avons maintenant terminé de définir le contenu du fichier de paramètres et de le pointer vers un flux de travail.
L'étape suivante consiste à utiliser le paramètre en session.
Étape 6 - Dans le workflow, double-cliquez sur la session "s_m_emp_emp_target", puis
- Sélectionnez le menu de l'onglet mappages
- Sélectionnez la propriété de connexion dans le panneau de gauche
- Cliquez sur la connexion cible, qui est maintenant codée en dur comme "guru99"
Étape 7 - Une fenêtre de navigateur de connexion apparaîtra, dans cette fenêtre
- Sélectionnez l'option pour utiliser la variable de connexion
- Entrez le nom de la variable de connexion sous la forme "$ DBConnection_SRC"
- Sélectionnez le bouton OK
Étape 8 - Dans la fenêtre d'édition de la tâche, la variable de connexion apparaîtra pour la cible, sélectionnez le bouton OK dans la fenêtre d'édition de la tâche.
Nous avons maintenant terminé de créer un paramètre pour une connexion et d'attribuer sa valeur au fichier de paramètres.
Lorsque nous exécutons le flux de travail, le flux de travail sélectionne le fichier de paramètres recherche la valeur de ses paramètres / variables dans le fichier de paramètres et prend ces valeurs.