Reitittimen muunnos Informaticassa: Esimerkki useista ehdoista

โšก ร„lykรคs yhteenveto

Informatican reitittimen muunnos on aktiivinen, yhdistetty objekti, joka testaa saapuvia rivejรค useiden ryhmรคsuodatusehtojen avulla samanaikaisesti ja lรคhettรครค jokaisen rivin vastaavaan lรคhtรถryhmรครคn tai oletusryhmรครคn.

  • ๐Ÿ”€ Useita ehtoja: Yksi reititin korvaa suodatinmuunnosten ketjun testaamalla useita ehtoja yhdellรค kertaa.
  • ๐Ÿ“ฆ Ryhmรคn rakenne: Yksi tuloryhmรค syรถttรครค tietoja kรคyttรคjรคn mรครคrittรคmistรค lรคhtรถryhmistรค sekรค yhdestรค automaattisesta oletusryhmรคstรค.
  • ๐Ÿ—ƒ๏ธ Oletusryhmรค: Rivit, jotka eivรคt tรคytรค kaikkia ehtoja, saapuvat tรคnne, joten hylรคtyt tiedot voidaan silti tallentaa menetyksen sijaan.
  • ๐Ÿงช Toimiva esimerkki: Ehdolla deptno=20 varustettu ryhmรค nimeltรค deptno_20 lataa vain osaston 20 rivit EMP_TARGET-muuttujaan.
  • โ™ป๏ธ pรครคllekkรคisyysping sรครคntรถjรค: Rivi, joka tรคyttรครค kaksi ehtoa, vรคlitetรครคn kerran kullekin vastaavalle tulosteryhmรคlle.
  • โšก Tehokkuus: Lรคhde luetaan kerran, mikรค tekee yhdestรค reitittimestรค halvemman kuin useista samoja rivejรค lukevista suodatinmuunnoksista.

Reitittimen muunnos Informaticassa

Mikรค on reitittimen muunnos?

Reititinmuunnos on aktiivinen ja yhdistetty muunnos, joka on samanlainen kuin Filter-muunnos ja jota kรคytetรครคn lรคhdedatan suodattamiseen.

Suodatuksen lisรคksi tarjolla oleva lisรคtoiminto on, ettรค hylรคtyt tiedot (suodatetut tiedot) voidaan myรถs kerรคtรค kartalle.ping, sekรค useita suodatusehtoja voidaan kรคyttรครค useiden tietojoukkojen saamiseksi.

Esimerkiksi suodatettaessa tietoja deptno = 10:n osalta, voimme saada myรถs ne tietueet, joissa deptno ei ole yhtรค suuri kuin 10. Joten Router-muunnos antaa useita lรคhtรถryhmiรค, ja jokaisella lรคhtรถryhmรคllรค voi olla oma suodatusehtonsa.

Lisรคksi on olemassa myรถs oletusryhmรค. Tรคmรค oletusryhmรค sisรคltรครค tietuejoukot, jotka eivรคt tรคytรค mitรครคn ryhmรคehdoista. Jos esimerkiksi olet luonut kaksi ryhmรครค suodatusehdoille osastonumero=10 ja osastonumero=20, tietueet, joilla ei ole osastonumeroita 10 ja 20, siirretรครคn tรคhรคn oletusryhmรครคn.

Lyhyesti sanottuna tรคmรค oletusryhmรค kerรครค suodatinryhmien hylkรครคmรคt tiedot, ja joskus hylรคtyt tiedot on tallennettava. Tรคllaisissa tilanteissa oletustulosteryhmรคstรค voi olla hyรถtyรค.

Useiden suodatusehtojen sallimiseksi Router-transformaatio tarjoaa ryhmรคvaihtoehdon.

  • Oletusarvoisesti on olemassa syรถttรถryhmรค, joka vastaanottaa syรถttรถdataa.
  • Oletusarvoinen tulosteryhmรค tarjoaa kaikki ne tiedot, joita mikรครคn suodatusehto ei lรคpรคise.
  • Jokaista suodatusehtoa kohden luodaan Router-transformaatiossa lรคhtรถryhmรค. Voit liittรครค eri kohteita nรคihin eri ryhmiin.

Reitittimen muunnoksen komponentit

Ennen kartan rakentamistaping, on hyรถdyllistรค tietรครค neljรค osaa, jotka Designer luo puolestasi. Router-muunnos koostuu yhdestรค tuloryhmรคstรค, joukosta lรคhtรถryhmiรค, niiden sisรคllรค olevista porteista ja ehdoista, jotka mรครคrรครคvรคt, mihin kukin rivi menee.

komponentti Mitรค se tekee
Syรถttรถryhmรค Muunnoksen yksittรคinen aloituspiste. Jokainen saapuva rivi saapuu tรคnne kerran riippumatta siitรค, kuinka monta tulosteryhmรครค on olemassa.
Kรคyttรคjรคn mรครคrittรคmรค lรคhtรถryhmรค Itse luomasi ja nimeรคmรคsi ryhmรค, kuten deptno_20. Jokaisella on oma ryhmรคsuodatusehtonsa.
Oletuslรคhtรถryhmรค Luodaan automaattisesti heti, kun ensimmรคinen kรคyttรคjรคn mรครคrittรคmรค ryhmรค on olemassa. Sillรค ei ole suodatusehtoa, eikรค sitรค voi muokata tai poistaa.
Ryhmรคsuodattimen ehto Lausekeeditorissa kirjoitettu totuusarvoinen lauseke. Rivit, joille se antaa arvon TRUE, poistuvat kyseisen ryhmรคn kautta.

Suunnittelija kopioi porttimรครคritelmรคt tuloryhmรคstรค jokaiseen lรคhtรถryhmรครคn, joten portteja ei tarvitse luoda uudelleen ryhmรค ryhmรคltรค. Tรคstรค suunnittelusta seuraa kaksi sรครคntรถรค:

  • Rivit voidaan kopioida. Jos rivi tรคyttรครค useamman kuin yhden ryhmรคsuodatusehdon, se vรคlitetรครคn kerran jokaiselle vastaavalle ryhmรคlle. Tรคmรค on tavallinen syy siihen, miksi kohteessa on enemmรคn rivejรค kuin lรคhteessรค.
  • Rivejรค voi poistaa. Jos oletusarvoinen ryhmรค jรคtetรครคn yhdistรคmรคttรค, siihen johtavat rivit yksinkertaisesti katoavat putkesta, mikรค on nopein tapa poistaa ei-toivotut tiedot.

Reitittimen muunnos vs. suodattimen muunnos

Molemmat objektit testaavat dataa ehtoa vasten ja molemmat ovat aktiivisia muunnoksia, joten valinta niiden vรคlillรค riippuu ehtojen lukumรครคrรคstรค ja siitรค, onko hylรคtyillรค riveillรค merkitystรค.

Vertailupiste Suodattimen muunnos Reitittimen muunnos
Ehtoja objektia kohden yksi Yksi tai useampi, kukin omassa ryhmรคssรครคn
Hylรคtyt rivit Poistettu ja ei saatavilla Kerรคtty oletusryhmรครคn
Lรคhtรถryhmรคt Yksi lรคhtรถputki Yksi putki ryhmรครค kohden, plus oletusryhmรค
Lรคhde lukee Yksi lukukerta suodatinta kohden, kun ehdot on ketjutettu Yksi lukukerta kaikkiin olosuhteisiin
Tyypillinen kรคyttรถ Rivien poistaminen, joita ei koskaan tarvita Yhden lรคhteen jakaminen useisiin kohteisiin

Kolmen ehdon testaaminen Filter-muunnoksilla tarkoittaa kolmea objektia, ja ketjutetussa suunnittelussa samat lรคhderivit arvioidaan toistuvasti. Yksi reititin tekee saman tyรถn yhdellรค kertaa, minkรค vuoksi se on yleensรค tehokkaampi vaihtoehto, kun toinen ehto ilmenee. Yksittรคisen kertakรคyttรถisen ehdon tapauksessa yksinkertaisempi Suodattimen muunnos on silti paremmin sopiva.

Kuinka luoda reitittimen muunnos Informaticassa

Alla oleva lรคpikรคynti rakentaa reitittimen, joka lรคhettรครค osaston 20 tyรถntekijรคn kohdepรถytรครคn. Noudata yhdeksรครค vaihetta kartan jรคrjestyksessรค.ping Suunnittelija.

Vaihe 1) Luo karttaping jonka lรคhde on โ€EMPโ€ ja kohde on โ€EMP_TARGETโ€. Karttaping Suunnittelupohja sisรคltรครค sitten lรคhdemรครคritelmรคn, sen lรคhdetarkenteen ja kohdemรครคritelmรคn alla olevan mukaisesti.

karttaping Suunnittelupohja, joka sisรคltรครค EMP-lรคhteen, sen lรคhteen tarkenteen ja EMP_TARGET-kohdemรครคritelmรคn

Vaihe 2) Sitten kartallaping

  1. Valitse Transformaatio-valikko
  2. Valitse luomisvaihtoehto

Ohjatun toiminnon kรคynnistรคmiseen kรคytetty valikkopolku on korostettu seuraavassa kuvakaappauksessa.

Muunnosvalikko avattu kartallaping Suunnittelija, jolla on Luo-vaihtoehto valittuna

Vaihe 3) Luo muunnos -ikkunassa

  1. Valitse reitittimen muunnos
  2. Anna muunnokselle nimi "rtr_deptno_10"
  3. Valitse Luo vaihtoehto

Vaihe 4) Reitittimen muunnos luodaan kartalleping. Valitse ikkunasta valmis-vaihtoehto. Molemmissa vaiheissa kรคytetty Luo muunnos -ikkuna nรคkyy alla.

Luo muunnos -ikkuna, jossa on valittuna reititin ja annettu nimi rtr_deptno_10

Vaihe 5) Vedรค ja pudota kaikki sarakkeet Lรคhteen tarkentaja reitittimen muunnokseen. Jokainen portti on nyt linkitetty uuteen objektiin, kuten kuvakaappaus osoittaa.

Kaikki lรคhdemรครคrittelyn sarakkeet vedettynรค rtr_deptno_10-reitittimen transformaatioon

Vaihe 6) Double napsauta reitittimen muunnosta ja sitten sen muunnosominaisuudessa

  1. Valitse ryhmรคvรคlilehti
  2. Kirjoita ryhmรคn nimi "deptno_20"
  3. Napsauta ryhmรคsuodattimen ehtoa

Seuraavaksi nรคytetรครคn Ryhmรคt-vรคlilehti, johon uusi ryhmรค on lisรคtty.

Reititintransformaation Ryhmรคt-vรคlilehti, johon on lisรคtty kรคyttรคjรคn mรครคrittรคmรค ryhmรค deptno_20

Vaihe 7) Kirjoita lausekeeditoriin suodatinehto deptno=20 ja valitse OK-painike. Tรคtรค ehtoa sisรคltรคvรค editori nรคkyy alla.

Lausekeeditori, jolla on ryhmรคsuodatusehto deptno=20 deptno_20-ryhmรคlle

Vaihe 8) Valitse ryhmรคikkunassa OK-painike. Ehto nรคkyy nyt ryhmรคn kohdalla, kuten seuraavassa kuvakaappauksessa nรคkyy.

Ryhmรคsuodatusehto tallennettu Muokkaa muunnoksia -ikkunassa deptno_20-ryhmรครค vasten

Vaihe 9) Yhdistรค Router-transformaation ryhmรคn deptno_20 portit kohdetaulukon portteihin. Valmis karttaping kulkee lรคhteestรค ryhmรคn kautta EMP_TARGET-kohteeseen.

EMP_TARGET-kohdetaulukkoon linkitetyt deptno_20-lรคhtรถryhmรคn portit

Nyt, kun suoritat tรคmรคn kartanping, suodatetut tietueet ladataan kohdetaulukkoon.

Reitittimen muuntamisen parhaat kรคytรคnnรถt ja yleiset virheet

Karttaping Yllรค olevassa kรคytetรครคn yhtรค ryhmรครค, joka piilottaa suurimman osan toiminnasta, joka aiheuttaa tukipyyntรถjรค myรถhemmin. Alla olevat kohdat kรคsittelevรคt sitรค, mitรค muuttuu, kun toinen ryhmรค ilmestyy.

  • Varo pรครคllekkรคisiรค rivejรค. Ryhmรคehdot eivรคt ole toisensa poissulkevia. Jos yhdessรค ryhmรคssรค on arvo sal>1000 ja toisessa deptno=20, molempia vastaavia ehtoja vastaava tyรถntekijรค ladataan kahdesti. Tee ehdoista toisensa poissulkevia tai hyvรคksy pรครคllekkรคisyys tarkoituksella.
  • Yhdistรค oletusryhmรค, kun hylkรคyksillรค on merkitystรค. Rivit, jotka eivรคt tรคytรค mitรครคn ehtoa, menetetรครคn, ellei oletusarvoista ryhmรครค ole kytketty kohteeseen tai hylkรคystiedostoon. Tarkastettavissa olevat lataukset yleensรค sรคilyttรคvรคt ne.
  • Nimeรค ryhmรคt sรครคnnรถn, รคlรค kohteen mukaan. Esimerkkiryhmรค deptno_20 on selkeรค; ryhmรค nimeltรค group1 ei. Huomaa, ettรค itse muunnos on nimetty tรคssรค lรคpikรคynnissรค rtr_deptno_10:ksi, kun taas ryhmรค suodattaa deptno 20:n perusteella, mikรค on juuri sellainen ristiriita, jonka nimeรคmisstandardi estรครค.
  • Suodata ennen reititystรค, jos mahdollista. Rivit, joita mikรครคn ryhmรค ei koskaan halua, on halvempaa poistaa lรคhdemรครคrittelykyselyssรค kuin siirtรครค reitittimeen.
  • ร„lรค kรคsittele reititintรค liittymisenรค. Se jakaa yhden putkilinjan useiksi. Haarojen yhdistรคminen vaatii Union-muunnoksen, ja kahden eri lรคhteen yhdistรคminen vaatii Puusepรคn muunnos.

Ryhmรครค, jonka ehto palauttaa NULL-arvon TRUE- tai FALSE-arvon sijaan, kรคsitellรครคn ei-matkivana, joten testattavan sarakkeen null-arvot sisรคltรคvรคt rivit kuuluvat oletusryhmรครคn. Null-arvojen kรคsittely eksplisiittisesti ehdossa vรคlttรครค tรคmรคn yllรคtyksen suorituskyvyn viritys ja testaus.

UKK

Kyllรค. Integrointipalvelu arvioi jokaisen ryhmรคn suodatusehdon jokaista riviรค vasten, joten rivi, joka tรคyttรครค kaksi ehtoa, vรคlitetรครคn kerran kunkin vastaavan ryhmรคn lรคpi.ping ehdot ovat odottamattomien rivien kaksoiskappaleiden tavallinen syy.

Siihen reititetyt rivit poistetaan putkesta. Oletusryhmรคn jรคttรคminen yhdistรคmรคttรถmรคksi on vakiotapa hylรคtรค tietoja, joita mikรครคn ehto ei halua, ja se on myรถs syy siihen, miksi hylรคtyt rivit joskus katoavat huomaamatta.

Ei. Se ilmestyy automaattisesti, kun ensimmรคinen kรคyttรคjรคn mรครคrittรคmรค ryhmรค on luotu, sillรค ei ole ryhmรคsuodatusehtoa, eikรค suunnittelija salli sen muokkaamista tai poistamista. Vain kรคyttรคjรคn mรครคrittรคmiรค ryhmiรค voi lisรคtรค, nimetรค uudelleen tai poistaa.

Tรคsmรคlleen yksi. Jokainen rivi saapuu kyseisen yhden tuloryhmรคn kautta, ja suunnittelija kopioi porttimรครคritelmรคnsรค jokaiseen lรคhtรถryhmรครคn, joten portteja ei tarvitse luoda uudelleen jokaiselle kartan haaralle.ping.

Union-muunnoksella, joka hyvรคksyy useita syรถteryhmiรค vastaavilla porteilla ja palauttaa yhden lรคhtรถputken. Reititin jakaa datan osiin; vain Union yhdistรครค haarat takaisin yhdeksi kohteeksi.

Yhdistettyjen lรคhtรถryhmien jรคrjestys mรครคrittรครค jรคrjestyksen, jossa integrointipalvelu arvioi ehdot. Se ei estรค riviรค vastaamasta myรถhempiรค ryhmiรค, joten jรคrjestys vaikuttaa jรคrjestykseen eikรค siihen, mitkรค rivit valitaan.

Tekoรคlyavustajat profiloivat lรคhdedataa paljastaakseen, miten arvot todellisuudessa jakautuvat, ja ehdottavat sitten jakoehtoja sekรค merkitsevรคt pรครคllekkรคisyyksiรค, jotka voisivat aiheuttaa rivien kaksoiskappaleita. Koneoppimiseen perustuvat neuvonantajat havaitsevat myรถs sarakkeet, joissa on paljon null-arvoja, ennen kuin kyseiset rivit saavuttavat hiljaisesti oletusryhmรคn.

Copilot luonnostelee totuuslausekkeet ja vastaavat SQL-lausekkeet nopeasti, mikรค sรครคstรครค aikaa toistuvien sรครคntรถjen kanssa. Se ei voi nรคhdรค porttiesi nimiรค tai datamรครคriรค, joten vahvista jokainen ehdotus lausekeeditorissa ennen kartan tallentamista.ping.

Tiivistรค tรคmรค viesti seuraavasti: