Hva er Transaction Control Transformation?
Transaksjonskontroll er en aktiv og tilkoblet transformasjon som lar oss begå eller tilbakebetale transaksjoner under utførelsen av kartleggingen. Forpliktelses- og tilbakeføringsoperasjoner er av betydelig betydning ettersom det garanterer tilgjengeligheten av data.
Når du behandler et stort datamengde, kan det være en situasjon når du skal forplikte dataene til målet. Hvis en forpliktelse utføres for ofte, vil det være en overhead for systemet. Hvis en forpliktelse utføres for sent, er det sjanser for tap av data i tilfelle feil.
Så for å gi fleksibilitet Transaksjonskontrolltransformasjon er gitt.
TCL COMMIT & ROLLBACK-kommandoer
Det er fem innebygde variabler tilgjengelig i denne transformasjonen for å håndtere operasjonen.
TC_CONTINUE_TRANSACTIONI tc_continue_transaction utføres ingen operasjoner, prosessen med datalasting fortsetter som den er.
TC_COMMIT_BEFOREI tc_commit_before når dette flagget er funnet satt, utføres en forpliktelse før behandlingen av gjeldende rad.
TC_COMMIT_AFTERI tc_commit_after den nåværende raden er behandlet, utføres en forpliktelse.
TC_ROLLBACK_BEFOREI tc_rollback_before utføres tilbakestilling først, deretter behandles data for å skrive.
TC_ROLLBACK_AFTERI tc_rollback_after blir data behandlet, og deretter blir tilbakeføringen utført.
Eksempel:
I dette eksemplet vil vi forplikte data til målet når tilstanden avd. No = 20 blir funnet
Trinn 1 - Opprett en kartlegging med EMP som kilde og EMP_TARGET som mål
Trinn 2 - Opprett en ny transformasjon ved hjelp av transformasjonsmenyen
- Velg en transaksjonskontroll som den nye transformasjonen
- Skriv inn transformasjonsnavn "tc_commit_dept20"
- Velg Opprett alternativ
Trinn 3 - Transaksjonskontrolltransformasjonen vil bli opprettet, velg ferdig knapp
Trinn 4 - Dra og slipp alle kolonnene fra kildekvalifiseringen til transaksjonskontrolltransformasjonen, og koble deretter alle kolonnene fra transaksjonskontrolltransformasjonen til måltabellen
Trinn 5 - Dobbeltklikk på transformasjon av transaksjonskontroll og deretter i redigeringsvinduet
- Velg eiendom-fanen
- Klikk på ikonet for redigering av transaksjonskontroll
Trinn 6 - i uttrykksredigereren skriver du inn uttrykket -
" iif (deptno = 20, tc_commit_before, tc_continue_transaction)" og velg OK
Det betyr at hvis avd. 20 blir funnet, så begå en transaksjon i målet, ellers fortsett den nåværende behandlingen.
Trinn 7 - Velg OK i forrige vindu
Lagre nå kartleggingen og kjør den etter å ha opprettet økt og arbeidsflyter. Denne kartleggingen vil forplikte dataene til målet når avdeling nummer 20 finnes i dataene.