Transformare agregator în Informatica cu Exemplu
Ce este transformarea agregatorului?
Transformarea agregatorului este o transformare activă utilizată pentru a efectua calcule agregate precum suma, medie etc.
De exemplu, dacă doriți să calculați suma salariilor tuturor angajaților din punct de vedere al departamentului, putem folosi Transformarea agregatorului.
Operațiile agregate sunt efectuate pe un grup de rânduri, astfel încât este necesar un substituent temporar pentru a stoca toate aceste înregistrări și a efectua calculele.
Pentru aceasta, se folosește memoria cache de agregare. Aceasta este o memorie principală temporară care este alocată transformării agregatorului pentru a efectua astfel de operațiuni.
În acest exemplu, vom calcula suma salariilor în funcție de departament. Pentru aceasta, avem nevoie de o nouă coloană pentru a stoca această sumă. Deci, în primul rând, vom pregăti o nouă rubrică.
Pas 1) Creați un nou tabel țintă a bazei de date, de exemplu, spuneți „sum_sal_deptwise”, folosind scriptul de mai jos. Veți vedea că noul tabel țintă al bazei de date este creat sub Target folder la pasul următor.
Descărcați fișierul Create_table_sal_deptwise.txt de mai sus
Pas 2) Creați o nouă mapare „m_ sum_sal_deptwise”.
Pentru a crea o nouă mapare, avem nevoie de tabelul sursă (EMP) și tabelul țintă (sum_sal_deptwise) ambele în designerul de cartografiere pentru asta trebuie să
- Importați tabelul țintă „sum_sal_deptwise” în mapare.
- Importați tabelul sursă „emp”.
Pas 3) În cartografiere,
- De la Calificator sursă, ștergeți coloanele empno, ename, job, mgr, hiredate & comm deci lăsând doar coloanele deptno și sal.
- Creați o nouă transformare a agregatorului folosind meniul casetei de instrumente, așa cum se arată în captura de ecran. Când faceți clic pe pictograma agregatorului, va fi creată o nouă transformare a agregatorului.
Pas 4) Trageți și plasați coloanele SAL și DEPTNO din calificatorul sursă (SQ_EMP) în transformarea agregatorului
Pas 5) Double faceți clic pe transformarea agregatorului pentru a-i deschide proprietățile și apoi
- Adăugați un nou port în transformare
- Redenumiți numele portului în SUM_SAL
- Schimbați tipul de date al acestui nou port la dublu
- Faceți acest port ca port de ieșire bifând caseta de selectare a portului de ieșire.
- Faceți clic pe opțiunea de expresie
Pas 6) În fereastra de expresie
- Adăugați expresie-sumă (SAL), trebuie să scrieți această expresie.
- Selectați butonul Ok, aceasta va readuce fereastra de editare a transformării.
Pas 7) În fereastra de editare a transformării, selectați opțiunea „GroupBy” bifând caseta de selectare lângă coloana deptno și faceți clic pe Ok (prin selectarea grupului după deptno, instruim Informatica să grupeze salariile după departament)
Pas 8) Conectați coloanele deptno și sum_sal de la transformarea agregatorului la tabelul țintă
Acum salvați cartografiere și executați-l după crearea unei noi sesiuni pentru această mapare. Tabelul țintă ar conține suma salariilor în funcție de departament. În acest fel, putem folosi transformarea agregatorului pentru a calcula rezultatele agregate.