Informatica의 트랜잭션 제어 변환(예)
거래 제어 변환이란 무엇입니까?
트랜잭션 제어는 매핑 실행 중에 트랜잭션을 커밋하거나 롤백할 수 있는 활성적이고 연결된 변환입니다. 커밋 및 롤백 작업은 데이터 가용성을 보장하기 때문에 매우 중요합니다.
대용량 데이터를 처리하다 보면 데이터를 타겟에 커밋해야 하는 상황이 발생할 수 있습니다. 커밋이 너무 자주 수행되면 시스템에 오버헤드가 발생합니다. 커밋이 너무 늦게 수행되면 실패할 경우 데이터가 손실될 가능성이 있습니다.
따라서 유연성을 제공하기 위해 트랜잭션 제어 변환이 제공됩니다.
TCL COMMIT 및 ROLLBACK 명령
이 변환에는 연산을 처리하기 위해 5개의 내장 변수가 있습니다.
TC_CONTINUE_TRANSACTION
tc_continue_transaction에서는 어떠한 작업도 수행되지 않으며, 데이터 로드 프로세스는 그대로 계속됩니다.
TC_COMMIT_BEFORE
tc_commit_before에서 이 플래그가 설정된 경우 현재 행을 처리하기 전에 커밋이 수행됩니다.
TC_COMMIT_AFTER
tc_commit_after에서 현재 행이 처리된 후 커밋이 수행됩니다.
TC_ROLLBACK_BEFORE
tc_rollback_before에서는 롤백을 먼저 수행한 후 데이터를 쓰기 위해 처리합니다.
TC_ROLLBACK_AFTER
tc_rollback_after 데이터가 처리된 후 롤백이 수행됩니다.
예:
이 예에서는 dept no =20 조건이 true인 경우 대상에 데이터를 커밋합니다.
단계 1) 소스로 EMP, 대상으로 EMP_TARGET을 사용하여 매핑을 생성합니다.
단계 2) 새 항목 만들기 변환 변환 메뉴를 사용한 다음
- 새 변환으로 트랜잭션 제어를 선택합니다.
- 변환 이름 "tc_commit_dept20"을 입력하세요.
- 생성 옵션 선택
단계 3) 거래 제어 변환이 생성됩니다. 완료 버튼을 선택하세요.
단계 4) 소스 한정자의 모든 열을 트랜잭션 제어 변환으로 끌어서 놓은 다음 트랜잭션 제어 변환의 모든 열을 대상 테이블에 연결합니다.
단계 5) Double 트랜잭션 제어 변환을 클릭한 다음 속성 편집 창에서 클릭하세요.
- 속성 탭 선택
- 거래 제어 편집기 아이콘을 클릭하세요.
단계 6) 표현식 편집기에서 표현식을 입력하십시오 -
"iif(deptno=20,tc_commit_before,tc_continue_transaction)” 및 확인을 선택합니다.
이는 부서 번호 20이 발견되면 대상에서 트랜잭션을 커밋하고, 그렇지 않으면 현재 처리를 계속한다는 의미입니다.
단계 7) 이전 창에서 확인을 선택하세요.
이제 저장 매핑 세션 및 워크플로우 생성 후 실행합니다. 이 매핑은 데이터에서 부서 번호 20이 발견될 때마다 데이터를 대상에 커밋합니다.







