Arbetsflöde i Informatica: Skapa, Uppgift, Parameter, Återanvändbar, Manager
Vad är Workflow?
Workflow är en grupp instruktioner/kommandon till integrationstjänsten i Informatica. Integrationstjänsten är en enhet som läser arbetsflödesinformation från förvaret, hämtar data från källor och efter att ha utfört transformation laddar den in i målet.
Arbetsflöde – Det definierar hur man kör uppgifter som sessionsuppgift, kommandouppgift, e-postuppgiftEtc.
För att skapa ett arbetsflöde
- Du måste först skapa uppgifter
- Och lägg sedan till dessa uppgifter i arbetsflödet.
Ett arbetsflöde är som en tom behållare, som har kapacitet att lagra ett objekt som du vill exekvera. Du lägger till uppgifter i arbetsflödet som du vill köra. I den här handledningen ska vi göra följande saker i arbetsflödet.
Arbetsflödesexekvering kan göras på två sätt
- Sekvens : Uppgifter körs i den ordning som de definieras
- Händelsebaserat: Uppgifterna utförs baserat på händelseförhållandena.
Hur man öppnar Workflow Manager
Steg 1) I Informatica Designer, klicka på ikonen Workflow manager
Steg 2) Detta öppnar ett fönster i Workflow Manager. Sedan i arbetsflödeshanteraren.
- Vi kommer att ansluta till förvaret "guru99", så dubbelklicka på mappen för att ansluta.
- Ange användarnamn och lösenord och välj sedan "Connect Button".
Steg 3) I arbetsflödeshanteraren.
- Högerklicka på mappen
- Välj öppna alternativ i popup-menyn
Detta öppnar arbetsytan för Workflow Manager.
Hur man skapar anslutningar för Workflow Manager
För att utföra en uppgift i arbetsflödeshanteraren måste du skapa anslutningar. Genom att använda dessa anslutningar ansluter Integration Service till olika objekt.
Till exempel i din kartläggning om du har en källtabell i Oracle-databasen behöver du Oracle-anslutning så att integrationstjänsten kan ansluta till Oracle-databasen för att hämta källdata.
Följande typ av anslutningar kan skapas i arbetsflödeshanteraren.
- Relationell anslutning
- Ftp-anslutning
- Kö
- Ansökan
Valet av anslutning du kommer att skapa beror på vilken typ av käll- och målsystem du vill ansluta. Oftare skulle du använda relationella kopplingar.
Att skapa en relationell anslutning
Steg 1) I Workflow Manager
- Klicka på menyn Anslutning
- Välj Relationsalternativ
Steg 2) I popup-fönstret
- Välja Oracle i typ
- Klicka på den nya knappen
Steg 3) I det nya fönstret för definition av anslutningsobjekt
- Ange anslutningsnamn (Nytt namn-guru99)
- Skriv in ditt användarnamn
- Ange lösenord
- Ange anslutningssträng
- Lämna andra inställningar som standard och välj OK-knappen
Steg 4) Du kommer tillbaka till föregående fönster. Klicka på stängningsknappen.
Nu är du inställd med den relationella anslutningen i arbetsflödeshanteraren.
Komponenter i Workflow Manager
Det finns tre komponentverktyg i arbetsflödeshanteraren som hjälper till att skapa olika objekt i arbetsflödeshanteraren. Dessa verktyg är
- Uppgiftsutvecklare
- Worklet Designer
- Arbetsflödesdesigner
Uppgiftsutvecklare – Task developer är ett verktyg med hjälp av vilket du kan skapa återanvändbara objekt. Återanvändbara objekt i arbetsflödeshanteraren är objekt som kan återanvändas i flera arbetsflöden. Till exempel, om du har skapat en kommandouppgift i uppgiftsutvecklaren, kan du återanvända den här uppgiften i valfritt antal arbetsflöden.
Arbetsflödesdesignerns roll är att utföra de uppgifter som läggs till i den. Du kan lägga till valfritt antal uppgifter i ett arbetsflöde.
Du kan skapa tre typer av återanvändbara uppgifter i uppgiftsutvecklaren.
- Kommandouppgift
- Sessionsuppgift
- E uppgift
Kommandouppgift – En kommandouppgift används för att utföra olika windows/unix-kommandon under körningen av arbetsflödet. Du kan skapa kommandouppgift för att utföra olika kommandobaserade uppgifter. Med hjälp av denna uppgift kan du utföra kommandon att skapa filer/mappar, att ta bort filer/mappar, att göra ftp av filer och så vidare
Sessionsuppgift – En sessionsuppgift i Informatica krävs för att köra en mappning.
- Utan en sessionsuppgift kan du inte köra eller köra en mappning
- En sessionsuppgift kan endast utföra en enda mappning. Så det finns ett ett till ett förhållande mellan en kartläggning och en session
- En sessionsuppgift är ett objekt med vars hjälp dator får veta hur och var man ska utföra en kartläggning och vid vilken tidpunkt
- Sessioner kan inte köras oberoende, en session måste läggas till i ett arbetsflöde
- In sessionsobjekt cacheegenskaper kan konfigureras och även avancerad prestandaoptimeringskonfiguration.
E-postuppgift – Med hjälp av e-postuppgift kan du skicka e-post till definierade mottagare när Integrationstjänsten kör ett arbetsflöde. Om du till exempel vill övervaka hur lång tid en session tar att slutföra, kan du konfigurera sessionen så att den skickar ett e-postmeddelande med information om sessionens start- och sluttid. Eller, om du vill att integrationstjänsten ska meddela dig när ett arbetsflöde slutförs/misslyckas, kan du konfigurera e-postuppgiften för detsamma.
Hur man skapar en kommandouppgift
Steg 1) För att skapa en kommandouppgift kommer vi att använda Task Developer. Öppna arbetsflödeshanteraren genom att klicka på fliken "uppgiftsutvecklare" i menyn.
Steg 2) När uppgiftsutvecklaren har öppnats följer du dessa steg
- Välj menyn Uppgifter
- Välj Skapa alternativ
Steg 3) I fönstret Skapa uppgift
- Välj kommando som typ av uppgift att skapa
- Ange uppgiftens namn
- Välj skapa-knappen
Detta kommer att skapa kommandouppgiftsmappen. Nu måste du konfigurera uppgiften för att lägga till kommando i den, som vi kommer att se i nästa steg.
Steg 4) För att konfigurera uppgiften, dubbelklicka på kommandouppgiftsikonen så öppnas ett "redigera uppgiftsfönster". I det nya redigeringsuppgiftsfönstret
- Välj kommandomenyn
- Klicka på ikonen för att lägga till nytt kommando
- Ange kommandonamn
- Klicka på kommandoikonen för att lägga till kommandotext
Detta öppnar en kommandoredigeringsruta.
Steg 5) I kommandoredigeraren anger du kommandot "mkdir C:\guru99" (detta är Windows-kommandot för att skapa en mapp med namnet "guru99") och välj OK.
Efter detta steg kommer du att återgå till fönstret för redigeringsuppgifter och du kommer att kunna se kommandot du lade till i kommandotextrutan.
Steg 6) Klicka på OK i fönstret för redigeringsuppgift,
Kommandouppgiften kommer att skapas i uppgiftsutvecklaren under "Guru99"-förrådet.
Anmärkningar använd ctrl+s genväg för att spara ändringarna i arkivet
Hur man skapar ett arbetsflöde för att utföra kommandouppgiften
För att utföra kommandotaks måste du byta till arbetsflödesdesigner. En arbetsflödesdesigner är ett överordnat eller behållarobjekt där du kan lägga till flera uppgifter och när arbetsflödet körs kommer alla tillagda uppgifter att köras. För att skapa ett arbetsflöde
Steg 1) Öppna arbetsflödesdesignern genom att klicka på menyn för arbetsflödesdesigner
Steg 2) I arbetsflödesdesigner
- Välj arbetsflödesmeny
- Välj skapa alternativ
Steg 3) I fönstret Skapa arbetsflöde
- Ange arbetsflödesnamn
- Välj OK-knappen (låt andra alternativ vara standard)
Detta kommer att skapa arbetsflödet.
Namnkonvention – Arbetsflödesnamn har prefixet med att använda 'wkf_', om du har en session som heter 's_m_employee_detail' då kan arbetsflödet för samma namnges som 'wkf_s_m_employee_detail'.
När du skapar ett arbetsflöde består det inte av några uppgifter. Så för att utföra en uppgift i ett arbetsflöde måste du lägga till uppgift i den.
Steg 4) För att lägga till kommandouppgift som vi har skapat i Task developer till arbetsflödesdesignern
- Expandera mappen med uppgifter i navigatorträdet
- Dra och släpp kommandouppgiften till arbetsflödesdesignern
Steg 5) Välj alternativet "länkuppgift" från verktygslådan från toppmenyn. (Alternativet länkuppgift länkar olika uppgifter i ett arbetsflöde till startuppgiften, så att ordningen för utförande av uppgifter kan definieras).
Steg 6) När du väl har valt länkuppgiftsikonen låter den dig dra länken mellan startuppgift och kommandouppgift. Välj nu startuppgiften och dra en länk till kommandouppgiften.
Nu är du redo med arbetsflödet med en kommandouppgift som ska utföras.
Hur man kör arbetsflödet
Steg 1) För att utföra arbetsflödet
- Välj arbetsflödesalternativ från menyn
- Välj alternativet Starta arbetsflöde
Detta öppnas arbetsflödesövervakare fönstret och kör arbetsflödet
När arbetsflödet har körts kommer det att utföra kommandouppgiften för att skapa en mapp (guru99-mapp) i den definierade katalogen.
Sessionsuppgift
En sessionsuppgift i Informatica krävs för att köra en mappning.
Utan en sessionsuppgift kan du inte köra eller köra en mappning och en sessionsuppgift kan endast utföra en enstaka mappning. Så det finns ett ett till ett förhållande mellan en kartläggning och en session. En sessionsuppgift är ett objekt med hjälp av vilket Informatica får veta hur och var man ska utföra en mappning och vid vilken tidpunkt. Sessioner kan inte köras oberoende, en session måste läggas till i ett arbetsflöde. I session kan objektcacheegenskaper konfigureras och även avancerad prestandaoptimeringskonfiguration.
Hur man skapar en sessionsuppgift
I den här övningen kommer du att skapa en sessionsuppgift för m_emp_emp_target som du skapade i föregående artikel.
Steg 1) Open Workflow manager och öppen uppgiftsutvecklare
Steg 2) När uppgiftsutvecklaren öppnas går du till huvudmenyn i arbetsflödeshanteraren
- Klicka på uppgiftsmenyn
- Välj skapa alternativ
Detta öppnar ett nytt fönster "Skapa uppgift"
Steg 3) I fönstret Skapa uppgift
- Välj sessionsuppgift som typ av uppgift.
- Ange namnet på uppgiften.
- Klicka på knappen Skapa
Steg 4) Ett fönster för val av mappning visas. Välj den mappning som du vill associera med denna session, för det här exemplet välj "m_emp_emp_target" mappning och klicka på OK-knappen.
Steg 5) Efter det, klicka på "Klar"-knappen
Sessionsobjekt visas i uppgiftsutvecklaren
Steg 6) I det här steget skapar du ett arbetsflöde för sessionsuppgiften. Klicka på ikonen för arbetsflödesdesigner.
Steg 7) I verktyget för arbetsflödesdesigner
- Klicka på arbetsflödesmenyn
- Välj skapa alternativ
Steg 8) I fönstret Skapa arbetsflöde
- Ange arbetsflödesnamn
- Välj OK. (lämna andra egenskaper som standard, du behöver inte ändra några egenskaper)
I arbetsflödeshanteraren visas en startuppgift, det är en startpunkt för exekvering av arbetsflöde.
Steg 9) I arbetsflödesansvarig
- Expandera sessionsmappen under navigeringsträdet.
- Dra och släpp sessionen du skapade i arbetsflödeshanterarens arbetsyta.
Steg 10) Klicka på länkuppgiftsalternativet i verktygslådan.
Steg 11) Länka startuppgiften och sessionsuppgiften med länken.
Steg 12) Double klicka på sessionsobjektet i wokflow manager. Det öppnar ett uppgiftsfönster för att ändra aktivitetsegenskaperna.
Steg 13) I redigeringsuppgiftsfönstret
- Välj mappningsflik
- Välj anslutningsegenskap
- Tilldela kopplingen till källa och mål, kopplingen som vi skapade i tidiga steg.
- Välj OK-knappen
Nu är din konfiguration av arbetsflödet klar och du kan köra arbetsflödet.
Hur man lägger till flera uppgifter till en startuppgift
Startuppgiften är en startpunkt för genomförandet av arbetsflödet. Det finns två sätt att länka flera uppgifter till en startuppgift.
- Parallell
- Serial
Parallellt länkas uppgifterna direkt till startuppgiften och alla uppgifter börjar köras parallellt samtidigt.
Hur man lägger till uppgifter parallellt
Steg 1)Öppna arbetsflödet "wkf_run_command" i arbetsflödeshanteraren
Steg 2)Lägg till sessionsuppgiften "s_m_emp_emp_target" i arbetsflödet. (genom att välja session och sedan dra och släppa)
Steg 3)Välj alternativet länkuppgift från verktygslådan
Steg 4) länka sessionsuppgiften till startuppgiften (genom att klicka på start taks, hålla ned klicket och ansluta till sessionsuppgiften)
Efter att ha länkat sessionsuppgiften kommer arbetsflödet att se ut så här.
Steg 5)Starta arbetsflödet och övervaka i arbetsflödesövervakaren.
Hur man lägger till uppgifter i seriellt läge
Men innan vi lägger till uppgifter i seriellt läge, måste vi ta bort uppgiften som vi lade till för att demonstrera parallell exekvering av uppgiften. För det
Steg 1)Öppna arbetsflödet "w.kf_run_command"
- Välj länken till sessionsuppgiften.
- Välj redigeringsalternativ i menyn
- Välj raderingsalternativ
Steg 2)Dialogrutan för bekräftelse visas i ett fönster, välj alternativet Ja
Länken mellan startuppgiften och sessionsuppgiften kommer att tas bort.
Steg 3)Gå nu igen till toppmenyn och välj alternativet länkuppgift från verktygslådan
Steg 4)länka sessionsuppgiften till kommandouppgiften
Efter länkning ser arbetsflödet ut så här
Steg 5) För att göra arbetsflödets visuella utseende tydligare
- Högerklicka på arbetsflödets wokspace
- Välj arrangera meny
- Välj alternativet Horisontellt
Om du startar arbetsflödet kommer kommandouppgiften att köras först och efter exekvering kommer sessionsuppgiften att starta.
Arbetsflödesvariabel
Arbetsflödesvariabler tillåter olika uppgifter i ett arbetsflöde att utbyta information med varandra och tillåter även uppgifter att komma åt vissa egenskaper för andra uppgifter i ett arbetsflöde. Till exempel, för att få det aktuella datumet kan du använda den inbyggda variabeln "sysdate".
Det vanligaste scenariot är när du har flera uppgifter i ett arbetsflöde och i en uppgift kommer du åt variabeln för en annan uppgift. Till exempel, om du har två uppgifter i ett arbetsflöde och kravet är att utföra den andra uppgiften endast när den första uppgiften har utförts framgångsrikt. Du kan implementera ett sådant scenario med fördefinierad variabel i arbetsflödet.
Genomförande av scenariot
Vi hade ett arbetsflöde "wkf_run_command" med uppgifter tillagda i seriellt läge. Nu kommer vi att lägga till ett villkor för länken mellan sessionsuppgift och kommandouppgift, så att sessionsuppgiften kommer att utföras först efter att kommandouppgiften har lyckats.
Steg 1) Öppna arbetsflödet "wkf_run_command"
Steg 2) Double klicka på länken mellan session och kommandouppgift
Ett uttrycksfönster visas
Steg 3)Double klicka på statusvariabeln under menyn "cmd_create_folder". En variabel "$cmd_create_folder.status" kommer att visas i redigeringsfönstret på höger sida.
Steg 4) Nu kommer vi att ställa variabeln "$cmd_create_folder.status" till villkoret lyckad status . vilket innebär att när de tidigare uppgifterna exekveras och exekveringen var framgångsrik, kör bara nästa sessionsuppgift.
- Ändra variabeln till "$cmd_create_folder.status=SUCCEEDED"-värdet.
- Klicka på OK-knappen
Arbetsflödet kommer att se ut så här
När du kör det här arbetsflödet körs kommandouppgiften först och först när den lyckas kommer endast sessionsuppgiften att köras.
Arbetsflödesparameter
Arbetsflödesparametrar är de värden som förblir konstanta under hela körningen. när deras värde väl tilldelas det förblir detsamma. Parametrar kan användas i arbetsflödesegenskaper och deras värden kan definieras i parameterfiler. Till exempel, istället för att använda hårdkodat anslutningsvärde kan du använda en parameter/variabel i anslutningsnamnet och värdet kan definieras i parameterfilen.
Parameterfiler är filerna där vi definierar värdena för mappnings-/arbetsflödesvariabler eller parametrar. Där filer har filtillägget ".par". Som en generell standard skapas en parameterfil för ett arbetsflöde.
Fördelar med parameterfil
- Hjälper till vid migrering av kod från en miljö till en annan
- Tillåter enkel felsökning och testning
- Värden kan enkelt ändras utan att ändra koden
Struktur för parameterfil
Strukturen för parameterfilen
- [folder_name.WF:Workflow_name]
- $Parameter_name=Parameter_värde
Mappnamn är namnet på arkivmappen, arbetsflödesnamn är namnet på arbetsflödet för vilket du skapar parameterfilen.
Vi kommer att skapa en parameterfil för databasanslutningen "guru99" som vi tilldelade i våra tidiga sessioner för källor och mål.
Hur man skapar en parameterfil
Steg 1)Skapa en ny tom fil (anteckningsblocksfil)
Steg 2)I filen skriv in text som visas i figuren
Steg 3) Spara filen under en mapp guru99 på platsen "C:\guru99" som "wkf_run_command.par"
I filen har vi skapat en parameter "$DBConnection_SRC", vi kommer att tilldela densamma till en anslutning i vårt arbetsflöde.
Steg 4)Öppna arbetsflödet "wkf_run_command"
- Välj arbetsflödesmeny
- Välj redigeringsalternativ
Steg 5)Detta öppnar fönstret för redigering av arbetsflöde i det här fönstret
- Gå till menyn Egenskaper
- Ange parameterfilnamnet som "c:\guru99\wkf_run_command.par"
- Välj OK-knappen
Nu är vi klara med att definiera parameterfilens innehåll och peka på ett arbetsflöde.
Nästa steg är att använda parametern i sessionen.
Steg 6) I arbetsflödet dubbelklicka på sessionen "s_m_emp_emp_target", sedan
- Välj mappningsflikmeny
- Välj anslutningsegenskap i den vänstra panelen
- Klicka på målanslutningen, som nu är hårdkodad som "guru99"
Steg 7)Ett webbläsarfönster för anslutning visas i det fönstret
- Välj alternativet för att använda anslutningsvariabel
- Ange anslutningsvariabelnamn som "$DBConnection_SRC"
- Välj OK-knappen
Steg 8) I redigeringsuppgiftsfönstret visas anslutningsvariabel för målet, Välj OK-knappen i redigeringsuppgiftsfönstret.
Nu är vi klara med att skapa parameter för en anslutning och tilldela dess värde till parameterfil.
När vi kör arbetsflödet väljer arbetsflödet parameterfilen letar efter värdet på dess parametrar/variabler i parameterfilen och tar dessa värden.