Hakumuunnos Informaticassa (esimerkki)

โšก ร„lykรคs yhteenveto

Informatican hakumuunnos lukee relaatiotaulukon, yksitasoisen tiedoston, nรคkymรคn tai synonyymin ja palauttaa vastaavat arvot kullekin saapuvalle riville toimien liitoksena, jossa toinen puoli on hakulรคhde.

  • ๐Ÿ”Ž Olosuhteet ohjaavat ottelua: Ehto-vรคlilehti sisรคltรครค vertailun, kuten OSAV.NO = OSAV.NO1, joka mรครคrittรครค palautettavan hakurivin.
  • ๐Ÿงช Toimiva esimerkki: Seitsemรคn karttaaping Suunnitteluvaiheet hakevat osastojen nimet DEPT:stรค EMP_DEPTNAME-kohteeseen ilman Joiner-funktiota.
  • ๐Ÿ”Œ Yhdistetty tai ei yhdistetty: Yhdistetty haku sijaitsee putkessa, kun taas yhdistรคmรคtรถntรค hakua kutsutaan lausekkeesta, jossa on :LKP-tarkennus.
  • ๐Ÿ‡ง๐Ÿ‡ท Oletusarvoisesti passiivinen: Yhden rivin palauttaminen pitรครค muunnoksen passiivisena, ja kaikkien vastaavien rivien palauttaminen tekee siitรค aktiivisen.
  • โ™ป๏ธ Uudelleenkรคytettรคvรคt esineet: Valitsemalla "Tee uudelleenkรคytettรคvรคksi" voit muuttaa yhden muunnoksen objektiksi, jossa on useita karttoja.pingvoi jakaa.
  • โš ๏ธ Yksisuuntainen kampanja: Uudelleenkรคytettรคvรคksi ylennettyรค muunnosta ei voida alentaa, joten vahvistuskehote ansaitsee huolellisen lukemisen.

Hakumuunnos Informaticassa

Mikรค on hakumuunnos?

Hakumuunnos on muunnos, jota kรคytetรครคn lรคhteen, lรคhteen tarkenteen tai kohteen hakemiseen asiaankuuluvien tietojen saamiseksi. Pohjimmiltaan se on erรครคnlainen liitosoperaatio, jossa toinen liitettรคvistรค taulukoista on lรคhdedata ja toinen liitettรคvรค taulukko on hakutaulukko. Itse hakulรคhde voi olla relaatiotaulukko, nรคkymรค, synonyymi tai yksittรคinen tiedosto.

Muunnos on passiivinen, mutta se palauttaa yhden rivin jokaista saapuvaa riviรค kohden. PowerCenter 9.x:stรค eteenpรคin se voidaan myรถs luoda palauttamaan kaikki ehtoa vastaavat rivit, ja tรคssรค tilassa se on aktiivinen muunnos. Valinta tehdรครคn muunnoksen luomisen yhteydessรค, eikรค sitรค voida vaihtaa jรคlkeenpรคin.

Kartalle voi sijoittaa kahdella tavalla.ping, ja erotus mรครคrittรครค, miten palautettu arvo saavuttaa putken muun osan.

Aspect Yhdistetty haku Yhdistรคmรคtรถn haku
Asema Sijaitsee putken sisรคllรค ja vastaanottaa arvoja edellisestรค muunnoksesta Sijaitsee putken ulkopuolella ja sitรค kutsutaan lausekkeesta
Miten sitรค kutsutaan Rivit virtaavat sen tuloportteihin Kutsutaan :LKP-viittaustarkenteella
Palautetut arvot Useita lรคhtรถportteja voidaan linkittรครค alavirtaan Yksi paluuarvo palaa kutsuvaan lausekkeeseen
Tyypillinen kรคyttรถ Jokainen rivi tarvitsee haetut sarakkeet Hakua tarvitaan vain joillekin riveille tai samaa hakua kutsutaan useista eri paikoista

Edellisissรค aiheissa kรคytimme ns. Puusepรคn muunnos yhdistรครคksesi โ€empโ€- ja โ€deptโ€-taulukot osastojen nimien tuomiseksi. Tรคssรค osiossa toteutamme saman hakumuunnosta kรคyttรคen.

Kuinka luoda hakumuunnos

Seuraavat vaiheet luovat hakumuunnoksen Informaticassa.

Vaihe 1) Luo uusi karttaping jossa lรคhteenรค on EMP ja kohteena EMP_DEPTNAME. Karttaping Suunnittelupohja sisรคltรครค sitten lรคhteen, sen lรคhteen tarkenteen ja kohteen mรครคritelmรคn.

karttaping Suunnittelupohja, jossa on EMP-lรคhde, sen lรคhteen tarkenne ja EMP_DEPTNAME-kohde

Vaihe 2) Luo uusi muunnos Muunnos-valikon avulla ja tee sitten Luo muunnos -ikkunassa seuraava:

  1. Valitse muunnokseksi Haku-muunnos
  2. Anna muunnoksen nimi "lkp_dept"
  3. Valitse luomisvaihtoehto

Luo muunnosikkuna, jossa hakumuunnos on valittuna ja nimi lkp_dept annettu

Vaihe 3) Tรคmรค avaa hakutaulukkoikkunan. Tรคssรค ikkunassa:

  1. Valitse lรคhdepainike
  2. Valitse DEPT-taulukko
  3. Valitse OK-painike

Valitse hakutaulukko -valintaikkuna, jossa Lรคhde-painike on valittuna ja DEPT-taulukko korostettuna

Vaihe 4) Hakumuunnos luodaan DEPT-taulukon sarakkeilla. Valitse nyt Valmis-painike. Lkp_dept-objekti sisรคltรครค nyt DEPTNO:n, DNAME:n ja LOC:n hakuportteina.

Hakumuunnos lkp_dept luotiin DEPT-taulukon sarakkeilla hakuportteina

Vaihe 5) Vedรค ja pudota DEPTNO-sarake lรคhdemรครคritteestรค hakumuunnokseen. Tรคmรค luo uuden DEPTNO1-sarakkeen hakumuunnokseen. Linkitรค sitten hakumuunnoksen DNAME-sarake kohdetaulukkoon.

Haku-muunnos hakee ja palauttaa osaston nimen OSASTON NUMERO1-arvon perusteella. OSASTON NUMERO1 on tyรถntekijรคn osaston numeroa sisรคltรคvรค syรถttรถportti, kun taas OSASTON NUMERO pysyy OSASTON hakutaulukosta luettuna porttina.

Lรคhdemรครคritteestรค lkp_dept-elementtiin linkitetty DEPTNO ja EMP_DEPTNAME-kohteeseen linkitetty DNAME

Vaihe 6) Double napsauta haku-muunnosta. Sitten muokkausmuunnosta-ikkunassa:

  1. Valitse ehto-vรคlilehti
  2. Aseta ehtosarakkeeksi DEPTNO = DEPTNO1
  3. Valitse OK-painike

Muokkaa muunnoksia -ikkunan Ehto-vรคlilehti, johon on syรถtetty ehto OSAS.NO = OSAS.NO1

Vaihe 7) Linkitรค loput sarakkeet lรคhdemรครคritteestรค kohdetaulukkoon.

Jรคljellรค olevat lรคhdetarkenteen sarakkeet, jotka on linkitetty EMP_DEPTNAME-kohdetaulukkoon

Tallenna nyt karttaping ja suorita se istunnon ja tyรถnkulun luomisen jรคlkeen. Tรคmรค karttaping hakee osastojen nimet hakumuunnoksen avulla.

Haku-muunnos on asetettu hakemaan DEPT-taulukosta ja liitosehto on asetettu osastonumeron perusteella. Jos useampi kuin yksi DEPT-rivi voi tรคyttรครค ehdon, Ominaisuudet-vรคlilehden Hakukรคytรคntรถ useille osumille -ominaisuus mรครคrittรครค palautettavan arvon.

Uudelleen kรคytettรคvรค muunnos

Normaalimuunnos on karttaan kuuluva objektiping ja sitรค voidaan kรคyttรครค kyseisen kartan sisรคllรคping vain. Tekemรคllรค muunnoksesta uudelleenkรคytettรคvรคn, sitรค voidaan kuitenkin kรคyttรครค uudelleen useiden karttojen sisรคllรคpings.

Esimerkiksi Lookup-muunnosta, joka hakee tyรถntekijรคn tiedot tyรถntekijรคnumeron perusteella, voidaan kรคyttรครค useissa kartoissa.pings aina kun tyรถntekijรคtietoja tarvitaan.

Kรคyttรคmรคllรค uudelleenkรคytettรคvรครค muunnosta, saman toiminnallisuuden luominen uudelleen vรคhentรครค ylityรถtรค. Jokainen karttaping sisรคltรครค yhden tallennetun objektin instanssin, joten uudelleenkรคytettรคvรครคn muunnokseen tehty muutos koskee niitรค kaikkia.

Kuinka luoda uudelleenkรคytettรคvรค muunnos

Seuraavat vaiheet luovat uudelleenkรคytettรคvรคn muunnoksen.

Vaihe 1) Avaa karttaping joka on muutoksen lรคpikรคyminen, tรคssรค me teemme Sijoitusmuutos uudelleenkรคytettรคviรค.

karttaping avattu Designerissa Rank-muunnoksella, josta tehdรครคn pian uudelleenkรคytettรคvรค

Vaihe 2) Double Napsauta muunnosta avataksesi muunnosten muokkausikkunan. Sitten:

  1. Valitse ikkunassa Transformation-vรคlilehti
  2. Valitse valintaruutu, jos haluat tehdรค muunnoksen uudelleenkรคytettรคvรคksi
  3. Valitse vahvistusikkunassa Kyllรค
  4. Valitse muunnosominaisuuksien ikkunassa OK.

Muokkaa muunnoksia -ikkunan Muunnos-vรคlilehti, jossa Tee uudelleenkรคytettรคvรคksi -valintaruutu on valittuna

Tรคmรค tekee muunnoksesta uudelleenkรคytettรคvรคn. Kolmannen kohdan vahvistusikkuna kannattaa lukea ennen sen hyvรคksymistรค: muunnoksen siirtรคminen uudelleenkรคytettรคvรคksi on yksisuuntainen muutos Suunnittelijassa, eikรค objektia voida alentaa jรคlkikรคteen. Jos yksi karttaping tarvitsee oman kopionsa, vedรค uudelleenkรคytettรคvรค objekti kankaalle pitรคen samalla Ctrl-nรคppรคintรค painettuna luodaksesi sen sijaan ei-uudelleenkรคytettรคvรคn instanssin.

UKK

Vรคlimuisti lataa hakulรคhteen muistiin kerran, joten jokainen rivi tรคsmรครค paikallisesti tietokannan kyselyn sijaan. Vรคlimuisti sopii pienille tai toistuvasti luetuille hakulรคhteille; vรคlimuistista riippumaton haku kyselee lรคhteestรค jokaisen saapuvan rivin.

Kรคytรค hakua (Lookup), kun toinen puoli on pieni viitetaulukko ja tarvitaan vain muutama sarake, varsinkin kun sama viite luetaan useista eri paikoista. Liitos (Joiner) sopii kahden suuren heterogeenisen putkiston aitoon liitokseen.

Useiden osumien hakukรคytรคntรถ -ominaisuus ratkaisee tรคmรคn. Se voi ilmoittaa virheestรค tai palauttaa ensimmรคisen, viimeisen tai minkรค tahansa vastaavan arvon. Kaikkien vastaavien arvojen palauttaminen aktivoi muunnoksen, ja se on asetettava luontihetkellรค.

Yleensรค siksi, ettรค hakulรคhde on suuri. Vรคlimuistissa oleva haku tekee kyselyn tietokannasta kerran riviรค kohden, kun taas vรคlimuistissa oleva haku maksaa koontikustannukset etukรคteen. Kรคyttรคmรคttรถmien hakuporttien poistaminen ja hakukyselyn rajaaminen auttavat molemmat.

Koneoppimista kรคytetรครคn nykyaikaisissa dataintegraatiotyรถkaluissa ehdottamaan sarakevastaavuuksia lรคhteen ja viitetaulukon vรคlillรค ja merkitsemรครคn hakuja, jotka hallitsevat istunnon suorituksenaikaa. Jokainen ehdotus on silti tarkistettava todellista dataa vasten.

Copilot avustaa kartan ympรคrillรค olevan tekstin kanssaping Designer-pohjan sijaan: haku SQL-ohituksista, parametritiedostoista ja tyรถnkulkuja suorittavista komentosarjoista. Se ei voi nรคhdรค tietovarastoa, joten porttien nimet ja ehdot on tarkistettava manuaalisesti.

Uudelleenkรคytettรคvรค muunnos on yksittรคinen tallennettu objekti, jota useat karttatiedostot jakavat.pings. Mapplet on uudelleenkรคytettรคvรค joukko muunnoksia, joissa on syรถte- ja tulosteryhmiรค ja jotka pakkaavat kokonaisen logiikan yhden vaiheen sijaan.

Yksikรครคn hakulรคhteen rivi ei tรคyttรคnyt kyseisten syรถterivien ehtoa. Tarkista kahden portin vรคliset lopussa olevat vรคlilyรถnnit, kirjainkoon erot ja tietotyyppien yhteensopimattomuudet, koska vertailu on tarkka.

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