Transaction Control Transformation in Informatica (esimerkki)

⚡ Älykäs yhteenveto

Informatican transaktio-ohjausmuunnos on aktiivinen, yhdistetty objekti, joka vahvistaa tai peruuttaa rivejä mapin aikana.ping suoritetaan käyttämällä viittä sisäänrakennettua muuttujaa ehdon sisällä, jota arvioidaan kerran jokaista riviä kohden.

  • 🔄 Viisi sisäänrakennettua muuttujaa: TC_CONTINUE_TRANSACTION, TC_COMMIT_BEFORE, TC_COMMIT_AFTER, TC_ROLLBACK_BEFORE ja TC_ROLLBACK_AFTER päättävät, mitä kullakin rivillä tapahtuu.
  • ⚙️ Kunto asuu kiinteistöissä: Ominaisuudet-välilehden Tapahtuman ohjausehto -kenttä sisältää Integration Servicen arvioiman IIF-lausekkeen.
  • 🧪 Toimiva esimerkki: Seitsemän karttaaping Suunnitteluvaiheet vahistaa EMP-tiedot EMP_TARGET-muuttujaan aina, kun osastonumero 20 löytyy.
  • ✅ Tehokas vai tehoton: Mikä tahansa transformaatio, joka pudottaa transaktiorajat sen jälkeen, tekee objektista tehottoman sen takana olevalle kohteelle.
  • 🔧 Istunnon vahvistustyyppi: Karttaping tehokkaalla Transaction Control -transformaatiolla suoritetaan käyttäjän määrittämän commit-tyypin alaisuudessa.
  • ⚠️ Tiukka paluuarvo: Ehto, joka palauttaa jonkin muun kuin commit-, roll back- tai continue-arvon, hylkää integrointipalvelun istunnon.

Transaction Control Transformation in Informatica

Mikä on Transaction Control Transformation?

Transaktionhallinta on aktiivinen ja yhdistetty transformaatio, jonka avulla voimme vahvistaa tai peruuttaa tapahtumia kartan suorituksen aikana.pingVahvistus- ja palautustoiminnot ovat erittäin tärkeitä, koska ne takaavat datan saatavuuden.

Suuren tietomäärän käsittelyssä voi syntyä tilanne, jossa tiedot on commit-tallennettava kohteeseen. Jos commit suoritetaan liian usein, se kuormittaa järjestelmää liikaa. Jos commit suoritetaan liian myöhään, epäonnistumisen sattuessa on olemassa tietojen menetyksen riski.

Joustavuuden lisäämiseksi käytetään Transaction Control -muunnosta. Sen sijaan, että commit-piste jätettäisiin istuntoon oletusarvoisesti, se sallii ehdon istunnon sisällä. karttaping päätä rivi riviltä, ​​missä yksi tapahtuma päättyy ja seuraava alkaa.

TCL:n vahvistus- ja palautuskomennot

Tässä muunnoksessa on käytettävissä viisi sisäänrakennettua muuttujaa operaation käsittelemiseksi. Ehdon on palautettava yksi viidestä muuttujasta jokaista riviä kohden, ja jos arvo on kyseisen luettelon ulkopuolella, integrointipalvelu hylkää istunnon.

TC_CONTINUE_TRANSACTION

TC_CONTINUE_TRANSACTION-lausekkeessa ei suoriteta mitään toimintoja, datan latausprosessi jatkuu sellaisenaan. Tämä on lausekkeen oletusarvo.

TC_COMMIT_BEFORE

Kun tämä lippu havaitaan TC_COMMIT_BEFORE-metodissa asetettuna, suoritetaan commit ennen nykyisen rivin käsittelyä. Tämän jälkeen alkaa uusi tapahtuma ja nykyinen rivi kirjoitetaan kohteeseen.

TC_COMMIT_AFTER

TC_COMMIT_AFTER-funktiossa käsitellään nykyinen rivi, minkä jälkeen suoritetaan commit ja seuraava tapahtuma alkaa.

TC_ROLLBACK_BEFORE

TC_ROLLBACK_BEFORE-metodissa ensin suoritetaan peruutus, jonka jälkeen tiedot käsitellään kirjoittamista varten.

TC_ROLLBACK_AFTER

TC_ROLLBACK_AFTER-metodissa tiedot käsitellään ja sitten suoritetaan peruutus.

Transaktio-ohjauksen muunnosominaisuudet

Objekti konfiguroidaan Muokkaa muunnoksia -ikkunassa, jossa on samat neljä välilehteä kuin muissakin PowerCenter-muunnoksissa. Sen tietäminen, mikä välilehti omistaa minkäkin asetuksen, säästää paljon etsintää alla olevan vaiheen aikana.

Kieleke Mitä siellä on konfiguroitu
Muutos Transformaation nimi, sen kuvaus ja onko objektista tehty uudelleenkäytettävä.
Portit Tulo- ja lähtöportit, jotka yleensä luodaan vetämällä sarakkeet sisään ylävirran transformaatiosta.
Kiinteistöt Transaktiokontrolliehto, joka on avattu kentän vieressä olevalla pienellä nuolella, ja Tracing-taso kirjoitetaan istuntolokiin.
Metadata-laajennukset Käyttäjän määrittämät metatiedot säilytetään muunnoksen mukana tietovarastossa.

Kaksi asetusta tekevät todellisen työn. Transaktiokontrolliehto sisältää lausekkeen, joka on yleensä IIF()-testi, joka palauttaa yhden viidestä muuttujasta. Tractaso määrittää, kuinka paljon tietoja muutoksesta näkyy istuntolokissa, kun suoritusta tutkitaan.

Yksi ympäristö on muutoksen ulkopuolella. Kun karttaping sisältää tehokkaan Transaction Control -muunnoksen, istunto suoritetaan Commit-tyyppi aseta Käyttäjän määrittämäksi Ominaisuudet-välilehdellä Istunto, eikä Target tai Lähde-commit-tyypit, jotka käyttävät kiinteää commit-väliä.

Transaktio-ohjauksen muunnoksen käyttö Informaticassa

Tässä esimerkissä commit-data lisätään kohteeseen, kun dept no = 20 -ehto on tosi.

Vaihe 1) Luo karttaping jossa lähteenä on EMP ja kohteena EMP_TARGET. 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_TARGET-kohdemääritelmä

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

  1. Valitse tapahtumaohjausobjekti uudeksi muunnokseksi
  2. Anna muunnoksen nimi "tc_commit_dept20"
  3. Valitse luomisvaihtoehto

Luo muunnosikkuna, jossa on valittuna Transaction Control ja annettu nimi tc_commit_dept20

Vaihe 3) Transaktio-ohjausobjektin transformaatio luodaan. Valitse Valmis-painike. Uusi objekti näkyy nyt kankaalla Lähde-määritteen vieressä.

Transaktio-ohjauksen muunnos tc_commit_dept20 luotiin lähdemääritteen viereen

Vaihe 4) Vedä ja pudota kaikki sarakkeet Source Qualifier -taulukosta Transaction Control -transformaatioon ja linkitä sitten kaikki Transaction Control -transformaation sarakkeet kohdetaulukkoon. Putkilinja toimii nyt seuraavasti: source → Source Qualifier → tc_commit_dept20 → EMP_TARGET.

Lähdetarkenteen sarakkeet, jotka on linkitetty tc_commit_dept20:n kautta EMP_TARGET-taulukkoon

Vaihe 5) Double napsauta Transaction Control -muunnosta ja sitten ominaisuusikkunassa:

  1. Valitse ominaisuus-välilehti
  2. Napsauta tapahtumanhallinnan muokkauskuvaketta

Muokkaa muunnoksia -ikkunan Ominaisuudet-välilehti, jossa näkyy tapahtumanohjauseditorin kuvake

Vaihe 6) Syötä lausekeeditoriin lauseke –

iif(deptno=20,tc_commit_before,tc_continue_transaction)

ja valitse OK. Tämä tarkoittaa, että jos osastonumero 20 löytyy, tapahtuma vahvistetaan kohteessa, muuten nykyistä käsittelyä jatketaan.

Lausekeeditori, jossa on IIF-ehto, joka vahvistaa ehtonsa ennen riviä, jonka osastonumero on 20

Vaihe 7) Valitse edellisessä ikkunassa OK. Ehto on nyt tallennettu muunnoksen Ominaisuudet-välilehdelle.

Muokkaa muunnoksia -ikkunan Ominaisuudet-välilehti tapahtuman ohjausehtojen tallentamisen jälkeen

Tallenna nyt karttaping ja suorita se istunnon ja työnkulkujen luomisen jälkeen. Tämä karttaping vahvistaa tiedot kohteeseen aina, kun tiedoista löytyy osastonumero 20.

Tehokkaat ja tehottomat transaktiohallinnan muunnokset

Transformaatio on transaktiogeneraattori. Se poistaa kaikki ylävirtaan tulevat transaktiorajat ja määrittelee omat uudet rajansa kaikelle alavirtaan suuntautuvalle, minkä vuoksi sen sijainti putkessa on yhtä tärkeä kuin sen kunto.

Sitä kutsutaan tehokas kohteelle, kun sen luomat rajat edelleen yltävät kyseiseen kohteeseen, ja tehoton kun myöhempi transformaatio poistaa nämä rajat. Informatica PowerCenter Transformation Guiden mukaan seuraavat objektit poistavat saapuvien tapahtumien rajat:

  • Yhdistäjä, Puuseppä, arvo, Lajittelija- tai mukautettu muunnos, jonka muunnosalue on Kaikki syötteet
  • Mukautettu muunnos, joka on määritetty luomaan tapahtumia
  • Toinen transaktiohallinnan muutos
  • Usean syötteen ryhmämuunnos, joka on yhdistetty useampaan kuin yhteen ylävirran transaktiokontrollipisteeseen

Tehottomuus kohteelle ei tee objektista hyödytöntä. Alavirran transformaatio, jonka Transformation Scope on Transaction, käyttää edelleen ylävirran rajoja, joten sama transformaatio voi olla tehokas lajittelijalle mutta tehoton sen takana olevalle taulukolle.

Kartallaping Jos kohteita on useita, kohde voi olla tehokas yhdelle ja tehoton toiselle.ping pysyy voimassa niin kauan kuin jokainen kohde on yhdistetty tehokkaaseen Transaction Control -transformaatioon, ja muuttuu virheelliseksi heti, kun yksi kohde ei ole yhdistetty. Suunnittelija raportoi, mitkä muunnokset ovat tehottomia kohteille, kun karttaping on tallennettu tai validoitu.

Transaktiohallinnan muunnoksen säännöt ja ohjeet

Suurin osa tämän muunnoksen ongelmista ilmenee pikemminkin suorituksen kuin suunnittelun aikana, joten alla olevat kohdat kannattaa tarkistaa ennen istunnon rakentamista.

  • Paluuarvo on tarkka. Jos ehto antaa jonkin muun tuloksen kuin commit, roll back tai continue, integrointipalvelu epäonnistuu istunnossa.
  • TC_CONTINUE_TRANSACTION on varamenetelmä. Jokaisen IIF():n haaran on päätyttävä jonnekin, ja continue on arvo, joka jättää nykyisen tapahtuman koskemattomaksi.
  • Kohdetyypillä on väliä. Muuhun kuin relaatio-, XML- tai dynaamiseen MQSeries-kohteeseen yhdistetty Transaction Control -transformaatio ei ole tehollinen kyseiselle kohteelle.
  • Ehto voi käyttää vain sitä, mikä siihen yltää. Transaktioeditorissa on käytettävissä vain transformaatioon linkitetyt portit, sen muuttujat ports ja sisäänrakennetut muuttujat.
  • Commit-tiheys on kompromissi. Ehto, joka aktivoituu lähes jokaisella rivillä, poistaa puskuroinnin hyödyn, kun taas ehto, joka ei juuri koskaan käynnisty, palauttaa sen datan menetysikkunan, jonka sulkemiseksi transformaatio lisättiin.
  • Tarkista istuntoloki. Loki tallentaa tosiasiallisesti otetut commit-pisteet, mikä on nopein tapa varmistaa, että ehto toimi tarkoitetulla tavalla. suorituskyvyn viritys.

UKK

Vahvistusväli vahvistaa muutokset istunnossa asetetun rivimäärän jälkeen. Transaktionhallintaehto vahvistaa itse tiedot, joten vahvistuspiste noudattaa liiketoimintasääntöä rivimäärän sijaan.

Informatica PowerCenterin transformaatio-oppaassa todetaan, että Transaction Control -transformaatio, joka on yhdistetty mihin tahansa muuhun kuin relaatio-, XML- tai dynaamiseen MQSeries-kohteeseen, on tehoton kyseiselle kohteelle.

Kyllä. Luo se Transformation Developerissa tai valitse Tee uudelleenkäytettäväksi olemassa olevan kartan Transformation-välilehdellä. Jokainen karttaping sitten jakaa saman ehdon, joten säännön muutos saavuttaa ne kaikki kerralla.

Koneoppiminen historiallisten istuntolokkien avulla voi merkitä latauksia, joissa commit-taajuus korreloi pitkien suoritusaikojen tai peruutusmyrskyjen kanssa. Ehdotus on edelleen hypoteesi, joten tarkista se todellisen suorituksen avulla ennen ehdon muuttamista.

Copilot voi luonnostella IIF()-muodon ja muistuttaa sinua viiden muuttujan nimestä, mutta se ei tiedä porttiesi nimiä tai liiketoimintasääntöjä. Käytä tulostetta lähtökohtana ja validoi se lausekeeditorissa.

Päivitysstrategia päättää, mitä riville tapahtuu, merkitsemällä sen lisäämällä, päivittämällä, poistamalla tai hylkäämällä. Transaktionhallinta päättää, milloin kirjoitetut rivit tehdään pysyviksi. Nämä kaksi vastaavat eri kysymyksiin ja niitä käytetään usein yhdessä.

Cloud Data Integration toimittaa oman Transaction Control -transformaationsa samoilla commit-, roll back- ja continue-muuttujilla. Suunnitteluidea säilyy, mutta objekti rakennetaan Cloud Mapissa.ping Designerissa PowerCenter-asiakasohjelman sijaan.

Kyseisen transaktion viimeisen commitin jälkeen kirjoitetut rivit hylätään. Kaikki aiemmin committoitu pysyy kohteessa, minkä vuoksi commit-pisteiden sijoittelu määrää, kuinka paljon työtä epäonnistuminen voi maksaa.

Tiivistä tämä viesti seuraavasti: