Transformarea controlului tranzacțiilor în Informatica (Exemplu)

Ce este transformarea controlului tranzacțiilor?

Controlul tranzacțiilor este o transformare activă și conectată care ne permite să comităm sau să anulăm tranzacții în timpul execuției mapării. Operațiunile de commit și rollback sunt de o importanță semnificativă, deoarece garantează disponibilitatea datelor.

Când procesați un volum mare de date, poate exista o situație când să trimiteți datele către țintă. Dacă o comitere este efectuată prea des, atunci va fi o suprasarcină pentru sistem. Dacă un commit este efectuat prea târziu, atunci în caz de eșec există șanse de pierdere a datelor.

Deci, pentru a oferi flexibilitate, este furnizată transformarea controlului tranzacțiilor.

Comenzi TCL COMMIT & ROLLBACK

Există cinci variabile încorporate disponibile în această transformare pentru a gestiona operația.

TC_CONTINUE_TRANSACTION

În tc_continue_transaction nu există operațiuni efectuate, procesul de încărcare a datelor continuă așa cum este.

TC_COMMIT_BEFORE

În tc_commit_before, când acest flag este găsit setat, o comitere este efectuată înainte de procesarea rândului curent.

TC_COMMIT_AFTER

În tc_commit_after rândul curent este procesat, apoi este efectuat un commit.

TC_ROLLBACK_BEFORE

În tc_rollback_before, rollback-ul este efectuat mai întâi, apoi datele sunt procesate pentru scriere.

TC_ROLLBACK_AFTER

În tc_rollback_after datele sunt procesate, apoi se efectuează rollback-ul.

Exemplu:

În acest exemplu, vom trimite date către țintă când condiția dept no =20 este adevărată

Pas 1) Creați o mapare cu EMP ca sursă și EMP_TARGET ca țintă

Transaction Control Transformation în Informatica

Pas 2) Creaza un nou transformare folosind meniul de transformare, atunci

  1. Selectați un control al tranzacției ca nouă transformare
  2. Introduceți numele transformării „tc_commit_dept20”
  3. Selectați opțiunea de creare

Transaction Control Transformation în Informatica

Pas 3) Transformarea controlului tranzacțiilor va fi creată, selectați butonul Terminat

Transaction Control Transformation în Informatica

Pas 4) Trageți și plasați toate coloanele de la calificatorul sursă la transformarea de control al tranzacțiilor, apoi legați toate coloanele de la transformarea de control al tranzacțiilor la tabelul țintă

Transaction Control Transformation în Informatica

Pas 5) Double faceți clic pe transformarea controlului tranzacției și apoi în fereastra de editare a proprietății

  1. Selectați fila de proprietate
  2. Faceți clic pe pictograma editorului de control al tranzacțiilor

Transaction Control Transformation în Informatica

Pas 6) în editorul de expresii introduceți expresia –

iif(deptno=20,tc_commit_before,tc_continue_transaction)” și selectați OK

Înseamnă că dacă deptno 20 este găsit, atunci comite tranzacția în țintă, altfel continuați procesarea curentă.

Transaction Control Transformation în Informatica

Pas 7) Selectați OK în fereastra anterioară

Transaction Control Transformation în Informatica

Acum salvați cartografiere și executați-l după crearea sesiunii și a fluxurilor de lucru. Această mapare va trimite datele către țintă ori de câte ori departamentul numărul 20 este găsit în date.