PuuseppƤmuunnos Informaticassa ESIMERKIN avulla

⚔ ƄlykƤs yhteenveto

Informatican liitosmuunnos on aktiivinen, yhdistetty objekti, joka yhdistƤƤ kaksi heterogeenistƤ lƤhdettƤ vastaavalla ehdolla ja tallentaa pƤƤputken vƤlimuistiin, kun taas yksityiskohtainen putki virtaa sen lƤpi.

  • 🧩 Mestari ja yksityiskohdat: Kaksi syƶteputkea syƶttƤƤ muunnosta, ja Portit-vƤlilehti pƤƤttƤƤ, kumpi toimii pƤƤputkena.
  • šŸ’¾ PƤƤtiedosto on vƤlimuistissa: PƤƤputki on aina rakennettu indeksi- ja datavƤlimuistiin, joten pienempi lƤhde kuuluu sinne.
  • šŸ”— NeljƤ liitostyyppiƤ: Normaali, PƤƤulkoinen, Yksityiskohtainen ulkoinen ja TƤysi ulkoinen pƤƤttƤvƤt, mitkƤ yhteensopimattomat rivit sƤilyvƤt liitoksen jƤlkeen.
  • 🧪 Toimiva esimerkki: EMP ja DEPT liitetƤƤn deptno-osiossa normaalilla liitoksella ja ladataan EMP_DEPTNAME-osaan.
  • šŸ‡§šŸ‡· Vain tasa-arvo: Liittymisehdossa portteja verrataan equals-operaattorilla, ja molemmilla porteilla on oltava sama tietotyyppi.
  • ⚔ Lajiteltu syƶte: Molempien putkistojen esilajittelu ehtoporteissa katkaisee levyn syƶtƶn ja lƤhdƶn istunnon aikana.

Joiner Transformation in Informatica

MikƤ on Joiner Transformation?

Joiner-transformaatio on aktiivinen ja yhdistetty transformaatio, joka tarjoaa sinulle mahdollisuuden luoda liitoksia Informaticassa. Joiner-transformaation avulla luodut liitokset ovat samankaltaisia ​​kuin tietokantojen liitokset. Joiner-transformaation etuna on, ettƤ liitoksia voidaan luoda heterogeenisille jƤrjestelmille (eri tietokannoille).

Joiner-transformaatiossa on kaksi lƤhdettƤ, joita aiomme kƤyttƤƤ liitoksissa. NƤitƤ kahta lƤhdettƤ kutsutaan

  • PƤƤlƤhde
  • Yksityiskohtaisten tietojen lƤhde

Joiner-transformaation ominaisuuksissa voit valita, mikƤ tietolƤhde voi olla pƤƤtietolƤhde ja mikƤ tietolƤhde.

Suorituksen aikana pƤƤlƤhde tallennetaan vƤlimuistiin liittƤmistƤ varten. Siksi on suositeltavaa valita pƤƤlƤhteeksi lƤhde, jossa on vƤhemmƤn tietueita. PƤƤputkea sƤilytetƤƤn kahdessa vƤlimuistissa: indeksivƤlimuistissa liitosehdossa kƤytettyjƤ arvoja varten ja datavƤlimuistissa lopuille rivitiedoille.

Liitostyypit Joiner-muunnoksessa

Ominaisuudet-vƤlilehden Liitoksen tyyppi -ominaisuus mƤƤrittƤƤ, mitƤ tapahtuu riveille, joille ei lƶydy osumaa. Seuraavat liitokset voidaan luoda Joiner-muunnosta kƤyttƤmƤllƤ.

  1. Master-ulkoliitos – PƤƤliitoksessa ulkoliitos palauttaa kaikki tietolƤhteen tietueet ja vain pƤƤlƤhteen vastaavat rivit palautetaan.
  2. Yksityiskohtainen ulkoliitos – Yksityiskohtaisessa ulkoliitoksessa palautetaan vain vastaavat rivit yksityiskohtalƤhteestƤ ja kaikki pƤƤlƤhteen rivit palautetaan.
  3. TƤysi ulkoliitos – TƤydessƤ ulkoliitoksessa palautetaan kaikki tietueet molemmista lƤhteistƤ.
  4. Normaali liittyminen – Normaalissa liitoksessa palautetaan vain vastaavat rivit molemmista lƤhteistƤ.

PƤƤulkoliitokset ja yksityiskohtaulkoliitokset vastaavat vasemmanpuoleisia ulkoliitoksia kohdassa SQL: jokainen sƤilyttƤƤ yhden lƤhteen jokaisen rivin ja vain toisen lƤhteen osumat. Alla olevassa taulukossa neljƤ tyyppiƤ on vertailtu niiden SQL-vastineisiin.

Liity tyyppi Rivit sƤilytetƤƤn pƤƤtiedostosta Rivit jƤtetty pois yksityiskohdista SQL-vastine
Normaali liittyminen Vain tƤsmƤƤvƤt Vain tƤsmƤƤvƤt SisƤinen liittyminen
Master-ulkoliitos Vain tƤsmƤƤvƤt Kaikki rivit Vasen ulompi liitos tietolƤhteessƤ
Yksityiskohtainen ulkoliitos Kaikki rivit Vain tƤsmƤƤvƤt Vasen ulompi liitos pƤƤlƤhteessƤ
TƤysi ulkoliitos Kaikki rivit Kaikki rivit TƤysi ulkoliitos

Liitostyyppi on ominaisuus, ei rakenteellinen valinta, joten sitƤ voidaan muuttaa myƶhemmin ilman kartan uudelleenrakentamista.ping tai linkittƤƤ portteja uudelleen.

Kuinka kƤyttƤƤ Joiner-muunnosta Informaticassa

TƤssƤ esimerkissƤ yhdistƤmme emp- ja dept-taulukot Joiner-muunnosta kƤyttƤen. KƤy lƤpi alla olevat kahdeksan vaihetta Map-kaaviossa.ping Suunnittelija.

Vaihe 1) Luo uusi kohdetaulukko EMP_DEPTNAME tietokantaan alla olevan skriptin avulla ja tuo taulukko Informatica Targetsiin.

Lataa yllƤ oleva emp_deptname.sql-tiedosto

Vaihe 2) Luoda uusi karttaping ja tuo lƤhdetaulukot ā€œEMPā€ ja ā€œDEPTā€ sekƤ kohdetaulukko, jonka loimme edellisessƤ vaiheessa. Kaikki kolme mƤƤritelmƤƤ ovat nyt kankaalla, kuten alla on esitetty.

karttaping Suunnittelupohja, jossa on EMP- ja DEPT-lƤhteet sekƤ EMP_DEPTNAME-kohdemƤƤritelmƤ

Vaihe 3) Valitse Muunnos-valikosta Luo-vaihtoehto. Sitten alla olevassa Luo muunnos -ikkunassa

  1. Valitse puusepƤn muunnos
  2. Anna muunnoksen nimi "jnr_emp_dept"
  3. Valitse luomisvaihtoehto

Luo muunnosikkuna, jossa on valittuna Joiner ja annettu nimi jnr_emp_dept

Vaihe 4) VedƤ ja pudota kaikki sarakkeet molemmista LƤhdetarkenteet Joiner-transformaatioon. Molemmat putket on nyt linkitetty jnr_emp_dept-tiedostoon, kuten kuvakaappaus osoittaa.

Molempien lƤhdemƤƤritelmien sarakkeet vedettynƤ jnr_emp_dept Joiner-transformaatioon

Vaihe 5) Double napsauta Joiner-muunnosta ja sitten Muokkaa muunnoksia -ikkunassa

  1. Valitse ehto-vƤlilehti
  2. Napsauta LisƤƤ uusi ehto -kuvaketta
  3. Valitse deptno pƤƤ- ja yksityiskohtasarakkeiden luettelosta

Ehto-vƤlilehti sisƤltƤƤ nyt deptno-kohdan yksittƤisen liitosehdon.

Joiner-transformaation ehtovƤlilehti, jossa pƤƤ- ja yksityiskohtasarakkeissa on valittuna deptno

Vaihe 6) Sitten samassa ikkunassa

  1. Valitse Ominaisuudet-vƤlilehti
  2. Valitse liitostyypiksi Normaali liittyminen
  3. Valitse OK-painike

Seuraavaksi nƤytetƤƤn Ominaisuudet-vƤlilehti, jolle on mƤƤritetty liitostyyppi.

Joiner-transformaation Ominaisuudet-vƤlilehti, jossa liitostyypiksi on asetettu Normaali liitos

Suorituskyvyn optimoimiseksi mƤƤritƤmme pƤƤlƤhteen lƤhdetaulukon putkelle, jossa on vƤhemmƤn tietueita. Voit suorittaa tƤmƤn tehtƤvƤn seuraavasti:

Vaihe 7) Double napsauta Joiner-muunnosta avataksesi Muokkaa muunnoksia -ikkunan ja sitten

  1. Valitse portit-vƤlilehti
  2. Valitse mikƤ tahansa tietyn lƤhteen sarake, josta haluat tehdƤ masterin
  3. Valitse OK

Portit-vƤlilehti merkitsee valitun putkilinjan pƤƤputkeksi, kuten alla on esitetty.

Joiner-transformaation Ports-vƤlilehti, jossa pƤƤlippu on asetettu yhtƤ lƤhdeputkea vasten

Vaihe 8) LinkitƤ Joiner-transformaation asiaankuuluvat sarakkeet kohdetaulukkoon. Karttaping toimii nyt molemmista lƤhteistƤ liitoksen kautta EMP_DEPTNAME-osastoon.

jnr_emp_dept-taulukosta EMP_DEPTNAME-kohdetaulukkoon linkitetyt sarakkeet yhdistetty

Tallenna nyt karttaping ja suorita se luomisen jƤlkeen Istunto ja tyƶnkulku sitƤ varten. Liitos luodaan Informatica Joinerilla, ja asiaankuuluvat tiedot noudetaan molemmista taulukoista.

Liitosmuunnosominaisuudet

Ominaisuudet-vƤlilehti sisƤltƤƤ muutakin kuin liitostyypin. Alla olevat asetukset hallitsevat liitoksen kƤyttƤmƤƤ muistia ja vƤlimuistitiedostojen tallennuspaikkaa.

Asetus MitƤ se hallitsee
Liity tyyppi Normaali, PƤƤulko, Yksityiskohtainen ulko tai TƤysi ulko. MƤƤrittƤƤ, mitkƤ yhteensopimattomat rivit sƤilytetƤƤn.
Liittymisehto PƤƤ- ja yksityiskohtaporttiparien luettelo verrattuna yhtƤsuuruus-operaattoriin. Useita ehtoja yhdistetƤƤn JA-operaattorilla.
Lajiteltu syƶte Ilmoittaa, ettƤ molemmat putket saapuvat jo lajiteltuina ehtojen mukaisten porttien mukaan, mikƤ antaa integrointipalvelun minimoida levyn syƶtƶn ja lƤhdƶn.
PƤƤlajittelujƤrjestys PƤƤlƤhdedatan lajittelujƤrjestys, jota kƤytetƤƤn yhdessƤ lajiteltujen syƶtteiden kanssa.
VƤlimuistihakemisto Hakemisto, johon indeksi- ja datavƤlimuistitiedostot luodaan. Oletusarvo on prosessimuuttuja $PMCacheDir.
Liitosdatan vƤlimuistin koko PƤƤrivin tietoja sisƤltƤvƤn tietovƤlimuistin koko. Oletusarvo on Automaattinen, jolloin integrointipalvelu voi muuttaa sen kokoa.
Liitoshakemiston vƤlimuistin koko PƤƤehtojen arvoja sisƤltƤvƤn indeksivƤlimuistin koko. Oletusarvo on Automaattinen.
Muunnosalue KƤyttƤƤ liitosta jokaiseen tapahtumaan, kaikkiin saapuviin tietoihin tai rivitason vaikutusalueeseen.

Lajiteltu syƶte on asetus, johon kannattaa tarttua ensin. Kun molemmat putket saapuvat ehtoporttien mukaisessa jƤrjestyksessƤ, integrointipalvelun ei tarvitse sƤilyttƤƤ koko pƤƤlƤhdettƤ ennen yhteensovituksen aloittamista, mikƤ on sama periaate, jota sovelletaan aikana suorituskyvyn viritys muista vƤlimuistissa olevista muunnoksista.

LiitosmuunnossƤƤnnƶt ja -rajoitukset

Jotkin rajoitukset tulevat esiin vasta, kun kartta on kƤytƶssƤ.ping on validoitu, joten on halvempaa tietƤƤ ne ennen porttien linkitystƤ.

  • Vain tasa-arvoa. Liitosehto vertaa portteja yhtƤ suuri kuin -operaattorilla. Vertailuoperaattoreita, kuten suurempi kuin, pienempi kuin tai ei yhtƤ suuri kuin, ei hyvƤksytƤ ehdossa.
  • Vastaavat tietotyypit. Molempien ehdon porttien on oltava samaa tietotyyppiƤ. Suunnittelija validoi tƤmƤn, joten yhteensopimattomat sarakkeet on ensin muunnettava, yleensƤ lausekemuunnoksessa.
  • Ei pƤivitysstrategiaa ylƤvirtaan. Joiner-transformaatiota ei voi kƤyttƤƤ, jos jompikumpi syƶttƶputki sisƤltƤƤ Update Strategy -transformaation.
  • Ei jƤrjestystƤ Generator suoraan sen edessƤ. Sarjan yhdistƤminen Generator Muunnosta vƤlittƶmƤsti Joiner-funktion ylƤpuolella ei tueta.
  • VƤlimuistia ei voi kytkeƤ pois pƤƤltƤ. PƤƤputki on aina vƤlimuistissa, minkƤ vuoksi pienempi lƤhde kuuluu pƤƤpuolelle ja siksi vƤlimuistin koolla on merkitystƤ suurissa liitoksissa.

Kolmen lƤhteen yhdistƤminen vaatii kaksi yhteen ketjutettua Joiner-muunnosta, koska kukin niistƤ hyvƤksyy tƤsmƤlleen yhden pƤƤ- ja yhden yksityiskohtaprosessin. Jos toinen lƤhde on pieni viitetaulukko, jota luetaan rivi riviltƤ, Hakumuunnos on usein yksinkertaisempi muotoilu.

UKK

Kaksi. Jokainen liitoskomponentti hyvƤksyy yhden pƤƤ- ja yhden yksityiskohtaprosessin, joten kolmen lƤhteen yhdistƤminen tarkoittaa kahden ketjuttamista: ensimmƤisen tuotoksesta tulee toisen tuloprosessi. Yleisesti ottaen n lƤhdettƤ tarvitsee n miinus yksi.

Kun molemmat taulukot sijaitsevat samassa relaatiotietokannassa. LƤhdetarkenne siirtƤƤ liitoksen tietokantaan, mikƤ vƤlttƤƤ vƤlimuistin kokonaan. LiitintƤ kƤytetƤƤn vain, kun kaksi lƤhdettƤ ovat heterogeenisiƤ tai jo erillisissƤ prosesseissa.

IndeksivƤlimuisti tallentaa liitosehdossa nimetyt pƤƤporttien arvot ja datavƤlimuisti tallentaa liitoksen palauttamat loput pƤƤrivitiedot. Molemmat rakennetaan vain pƤƤputkesta, ei koskaan yksityiskohtaputkesta.

Ei. Null-arvo jommassakummassa portissa aiheuttaa ehdon epƤonnistumisen, aivan kuten SQL:ssƤ, joten kyseisiƤ rivejƤ kƤsitellƤƤn tƤsmƤƤmƤttƶminƤ. Korvaa null-arvot oletusarvolla ylƤvirran portissa, kun niiden on tarkoitus liittyƤ.

KyllƤ. LisƤƤ lƤhteen mƤƤritelmƤ karttaan.ping kahdesti niin, ettƤ syntyy kaksi erillistƤ putkea, ja syƶtƤ sitten toinen pƤƤpuolelle ja toinen yksityiskohtapuolelle. TƤmƤ on tavallinen tapa ratkaista esimiessarake takaisin tyƶntekijƤn nimeksi.

KyllƤ, ja tuo heterogeeninen tapaus on muutoksen pƤƤsyy. Tasaisen tiedoston prosessi ja relaatioprosessi liittyvƤt yhteen vastaavien porttien kautta aivan kuten kaksi tietokantataulukkoa tekisivƤt, koska liitos tapahtuu integraatiopalvelun sisƤllƤ.

TekoƤlyavustajat profiloivat molemmat lƤhteet ehdottaakseen liittymisavaimia, arvioivat rivien mƤƤrƤn siten, ettƤ pienempi puoli valitaan pƤƤpuolelle, ja merkitsevƤt vinot tai paljon nulleja sisƤltƤvƤt sarakkeet, jotka rƤjƤyttƤisivƤt tulosjoukon. Koneoppimiseen perustuvat neuvonantajat myƶs luokittelevat vƤlimuistin kokovaihtoehdot.

Copilot luonnostelee vastaavan SQL:n ja tietotyyppimuunnokset nopeasti, mikƤ lyhentƤƤ porttien valmistelutyƶtƤ. Se ei nƤe vƤlimuistien kokoja tai rivimƤƤriƤ, joten tarkista jokainen ehdotus kartan avulla.ping ennen sen tallentamista.

TiivistƤ tƤmƤ viesti seuraavasti: