Uppslagstransformation i Informatica (exempel)
⚡ Smart sammanfattning
En uppslagstransformation i Informatica läser en relationstabell, flat file, vy eller synonym och returnerar matchande värden för varje inkommande rad, och fungerar som en koppling där ena sidan är uppslagskällan.
Vad är Lookup Transformation?
En uppslagstransformation är en transformation som används för att söka upp en källa, källkvalificerare eller mål för att få relevant data. I grund och botten är det en typ av kopplingsoperation där en av de kopplingstabellerna är källdata och den andra kopplingstabellen är uppslagstabellen. Själva uppslagskällan kan vara en relationstabell, en vy, en synonym eller en platt fil.
Transformationen är passiv och returnerar en enda rad för varje inkommande rad. Från och med PowerCenter 9.x kan den också skapas för att returnera varje rad som matchar villkoret, och i det läget är det en aktiv transformation. Valet görs när transformationen skapas och kan inte ändras efteråt.
Det finns två sätt att placera den på en kartaping, och skillnaden avgör hur det returnerade värdet når resten av pipelinen.
| Aspect | Ansluten sökning | Okopplad sökning |
| Placera | Sitter inuti pipelinen och tar emot värden från den föregående transformationen | Sitter utanför pipelinen och anropas från ett uttryck |
| Hur det kallas | Rader flödar in i dess inmatningsportar | Anropad med referenskvalificeraren :LKP |
| Returnerade värden | Flera utgångsportar kan kopplas nedströms | Ett returvärde går tillbaka till det anropande uttrycket |
| Typisk användning | Varje rad behöver de uppslagna kolumnerna | Uppslaget behövs bara för vissa rader, eller så anropas samma uppslag från flera ställen |
I tidigare ämnen använde vi Snickarförvandling för att sammanfoga tabellerna "emp" och "dept" för att hämta avdelningsnamn. I det här avsnittet kommer vi att implementera samma sak med hjälp av Lookup-transformationen.
Hur man skapar uppslagstransformation
Följande är stegen för att skapa en Lookup-transformation i Informatica.
Steg 1) Skapa en ny kartaping med EMP som källa och EMP_DEPTNAME som mål. Kartanping Designer-arbetsplatsen innehåller sedan källan, dess källkvalificerare och måldefinitionen.
Steg 2) Skapa en ny transformation med hjälp av menyn Transformation och gör sedan följande i fönstret Skapa transformation:
- Välj Söktransformation som transformation
- Ange transformationsnamnet "lkp_dept"
- Välj skapa alternativ
Steg 3) Detta öppnar fönstret för uppslagstabellen. I det här fönstret:
- Knappen Välj källa
- Välj DEPT-tabell
- Välj OK-knappen
Steg 4) En söktransformation kommer att skapas med kolumnerna i tabellen DEPT, välj nu knappen "Klar". Objektet lkp_dept bär nu DEPTNO, DNAME och LOC som sökportar.
Steg 5) Dra och släpp kolumnen DEPTNO från källkvalificeraren till söktransformationen. Detta skapar en ny kolumn DEPTNO1 i söktransformationen. Länka sedan DNAME-kolumnen från söktransformationen till måltabellen.
Lookup-transformationen söker upp och returnerar avdelningsnamn baserat på värdet DEPTNO1. DEPTNO1 är indataporten som bär den anställdas avdelningsnummer, medan DEPTNO förblir den port som läses från DEPT-sökningstabellen.
Steg 6) Double Klicka på söktransformationen. Gör sedan följande i redigeringsfönstret för transformationen:
- Välj fliken villkor
- Ställ in villkorskolumnen till DEPTNO = DEPTNO1
- Välj OK-knappen
Steg 7) Länka resten av kolumnerna från källkvalificeraren till måltabellen.
Spara nu kartaping och kör den efter att sessionen och arbetsflödet har skapats. Denna kartaping hämtar avdelningsnamnen med hjälp av söktransformationen.
Lookup-transformationen är inställd på att söka upp i DEPT-tabellen, och kopplingsvillkoret ställs in baserat på avdelningsnummer. Om mer än en DEPT-rad kan uppfylla villkoret, avgör egenskapen Lookup Policy on Multiple Match på fliken Egenskaper vilket värde som returneras.
Återanvändbar transformation
En normaltransformation är ett objekt som tillhör en kartaping och kan användas inuti den kartanping endast. Genom att göra en transformation återanvändbar kan den dock återanvändas inom flera kartorpings.
Till exempel kan en Lookup-transformation som hämtar medarbetaruppgifter baserat på medarbetarnummer användas i flera kartor.pingöverallt där anställningsuppgifter krävs.
Genom att använda en återanvändbar transformation minskar det överarbetet med att skapa samma funktionalitet igen.ping innehåller en instans av det enda lagrade objektet, så en ändring som görs i den återanvändbara transformationen når dem alla.
Hur man skapar återanvändbar transformation
Följande är stegen för att skapa en återanvändbar transformation.
Steg 1) Öppna kartanping som genomgår förvandlingen, här gör vi Rangomvandling återanvändbar.
Steg 2) Double Klicka på transformationen för att öppna fönstret för redigering av transformationen. Gör sedan följande:
- Välj fliken Transformation i fönstret
- Markera kryssrutan för att göra transformationen återanvändbar
- Välj Ja i bekräftelsefönstret
- Välj OK i fönstret för transformationsegenskaper.
Detta gör transformationen återanvändbar. Bekräftelsefönstret i det tredje alternativet är värt att läsa innan det accepteras: att flytta en transformation till återanvändbar är en envägsändring i Designern, och objektet kan inte degraderas efteråt. Där en enskild kartaping behöver en egen kopia, dra det återanvändbara objektet till arbetsytan medan du håller ned Ctrl-tangenten för att skapa en icke-återanvändbar instans istället.










