Wat is Joiner-transformatie?
Joiner-transformatie is een actieve en verbonden transformatie die u de mogelijkheid biedt om joins te maken in Informatica. De joins die zijn gemaakt met joiner-transformatie zijn vergelijkbaar met de joins in databases. Het voordeel van joiner-transformatie is dat joins kunnen worden gemaakt voor heterogene systemen (verschillende databases).
Bij joiner-transformatie zijn er twee bronnen die we gaan gebruiken voor joins. Deze twee bronnen worden genoemd
- Hoofdbron
- Detail Bron
In de eigenschappen van joiner-transformatie kunt u selecteren welke gegevensbron Master kan zijn en welke bron een detailbron kan zijn.
Tijdens de uitvoering wordt de masterbron in het geheugen opgeslagen om samen te voegen. Het wordt dus aanbevolen om de bron met minder records als de hoofdbron te selecteren.
De volgende joins kunnen worden gemaakt met joiner-transformatie
- Master outer join
In Master outer join worden alle records uit de detailbron geretourneerd door de join en worden alleen overeenkomende rijen uit de masterbron geretourneerd.
- Detail buitenste verbinding
In detail worden alleen bij de outer join overeenkomende rijen geretourneerd vanuit de detailbron en worden alle rijen uit de masterbron geretourneerd.
- Volledige buitenste verbinding
Bij volledige outer join worden alle records van beide bronnen geretourneerd. Master outer joins en Detail outer joins zijn gelijk aan left outer joins in SQL.
- Normale deelname
Bij een normale koppeling worden alleen overeenkomende rijen geretourneerd uit beide bronnen.
In dit voorbeeld zullen we emp- en depth-tabellen samenvoegen met behulp van joiner-transformatie
Stap 1 - Maak een nieuwe doeltabel EMP_DEPTNAME in de database met behulp van het onderstaande script en importeer de tabel in Informatica-doelen.
Download het bovenstaande emp_deptname.sql-bestand
Stap 2 - Maak een nieuwe toewijzing en importeer brontabellen "EMP" en "DEPT" en doeltabel die we in de vorige stap hebben gemaakt
Stap 3 - Selecteer in het transformatiemenu de optie Create.
- Selecteer schrijnwerker-transformatie
- Voer de transformatienaam "jnr_emp_dept" in
- Selecteer optie maken
Stap 4 - Versleep alle kolommen van beide bronkwalificaties naar de joiner-transformatie
Stap 5 - Dubbelklik op de joiner-transformatie en vervolgens in het transformatievenster
- Selecteer het conditietabblad
- Klik op het pictogram nieuwe conditie toevoegen
- Selecteer afdelingsnummer in de lijst met hoofd- en detailkolommen
Stap 6 - Vervolgens in hetzelfde venster
- Selecteer het tabblad Eigenschappen
- Selecteer normaal lid als join-type
- Selecteer OK-knop
Voor prestatieoptimalisatie wijzen we de hoofdbron toe aan de brontabelpijplijn die minder records bevat. Om deze taak uit te voeren -
Stap 7 - Dubbelklik op de joiner-transformatie om het eigenschappenvenster voor bewerken te openen, en dan
- Selecteer het tabblad poorten
- Selecteer een kolom van een bepaalde bron waarvan u een master wilt maken
- Selecteer OK
Stap 8 - Koppel de relevante kolommen van de joiner-transformatie aan de doeltabel
Sla nu de mapping op en voer deze uit nadat u er een sessie en workflow voor hebt gemaakt. De join wordt gemaakt met behulp van de Informatica-joiner en relevante details worden uit beide tabellen opgehaald.