INFORMATICA 변환 튜토리얼 및 필터 변환
⚡ 스마트 요약
Informatica에서의 변환은 지도와 같습니다.ping 대상을 향해 데이터를 생성, 수정 또는 전달하는 객체와, 단일 필터 조건을 충족하지 못하는 모든 행을 삭제하는 활성 객체가 필터 변환입니다.

변환이란 무엇입니까?
Informatica에서 변환(Transformation)은 정의된 대상 구조(테이블, 파일 또는 기타 대상)에 데이터를 생성, 수정 또는 전달하는 객체입니다.
Informatica에서 변환의 목적은 소스 데이터를 대상 시스템의 요구 사항에 맞게 수정하는 것입니다. 또한 대상 시스템에 로드되는 데이터의 품질을 보장합니다.
Informatica는 특정 기능을 수행하기 위한 다양한 변환을 제공합니다.
예를 들어, 원본 데이터를 기반으로 세금 계산을 수행하거나 데이터 정제 작업을 하는 것 등이 있습니다. 변환 과정에서 포트를 연결하여 데이터를 전달하고, 변환 결과는 출력 포트를 통해 반환됩니다.
변환의 분류
변환은 연결성을 기준으로 하는 변환과 행 수의 변화를 기준으로 하는 변환, 이렇게 두 가지 범주로 분류됩니다. 먼저 연결성을 기준으로 하는 변환에 대해 살펴보겠습니다.
연결성에 따른 변환 유형
- 연결된 변환
- 연결되지 않은 변환
Informatica에서 맵을 생성하는 동안ping다른 변환과 연결된 변환을 연결 변환이라고 합니다.
예를 들어, 소스 한정자 변환 원본 테이블 EMP는 필터 변환에 연결되어 특정 부서의 직원을 필터링합니다.
다른 변환과 연결되지 않은 변환을 연결되지 않은 변환이라고 합니다.
이러한 기능은 표현식 변환과 같은 다른 변환 내에서 호출하여 사용됩니다. 이러한 변환 자체는 파이프라인의 일부가 아닙니다.
연결된 변환은 모든 입력 행에 대해 변환이 호출되거나 값을 반환할 것으로 예상되는 경우에 선호됩니다. 예를 들어, 모든 행의 우편번호에 대해 변환이 도시 이름을 반환하는 경우입니다.
독립적인 변환은 해당 기능이 주기적으로 또는 특정 조건에 따라서만 필요할 때 유용합니다. 예를 들어, 세금 값을 알 수 없는 경우 세금 세부 정보를 계산하는 경우가 그렇습니다.
아래 그림은 두 쌍의 범주를 나란히 보여줍니다.
행 수 변화에 따른 변환 유형
- 활성 변환
- 수동적 변환
활성 변환이란 입력 데이터 행과 입력 행의 개수를 변경하는 변환을 말합니다. 예를 들어, 변환이 10개의 행을 입력으로 받아 15개의 행을 출력으로 반환한다면, 이는 활성 변환입니다. 활성 변환에서는 행의 데이터 내용도 변경됩니다.
수동 변환은 입력 행의 수를 변경하지 않는 변환입니다. 수동 변환에서는 입력 행과 출력 행의 수가 동일하게 유지되며, 행 수준에서 데이터만 수정됩니다.
수동 변환에서는 새 행이 생성되지 않고 기존 행이 삭제되지 않습니다.
다음은 Informatica의 변환 목록입니다.
- 소스 한정자 변환
- 애그리게이터 변환
- 라우터 변환
- 조이너 변환
- 순위 변환
- 순서 Generator 변환
- 트랜잭션 제어 변환
- 조회 및 재사용 가능한 변환
- 노멀라이저 변환
- 변환을 위한 성능 조정
- 외부 변환
- 표현식 변환
필터 변환이란 무엇입니까?
필터 변환은 레코드 수를 변경하는 활성 변환입니다.
필터 변환을 사용하면 필터 조건에 따라 레코드를 필터링할 수 있습니다.
예를 들어, 부서 번호(deptno)가 10인 직원 기록만 불러오려면 맵에 필터 변환을 추가할 수 있습니다.ping 필터 조건으로 deptno=10을 적용하면 deptno=10인 레코드만 필터 변환을 통과하고 나머지 레코드는 삭제됩니다.
기본 필터 조건은 TRUE이므로 새로 생성된 필터 변환은 조건이 입력될 때까지 모든 행을 통과합니다. FALSE를 반환하는 각 행은 삭제되고 세션 로그에 메시지가 기록됩니다.
필터 변환 사용 방법
단계 1) 만들기 지도ping 소스가 "EMP"이고 대상이 "EMP_TARGET"인 경우.
단계 2) 그럼 지도에서ping:
- 변환 메뉴를 선택하세요
- 생성 옵션을 선택하세요
단계 3) 그런 다음 변환 생성 창에서:
- 목록에서 필터 변환을 선택합니다.
- 변환 이름 "fltr_deptno_10"을 입력하세요.
- 생성 옵션을 선택하세요
단계 4) 필터 변환이 생성됩니다. 변환 생성 창에서 "완료" 버튼을 선택하십시오.
단계 5) 지도에서ping:
- 소스 한정자 열을 모두 필터 변환으로 드래그 앤 드롭하세요.
- 필터 변환의 열을 대상 테이블에 연결합니다.
단계 6) Double- 필터 변환을 클릭하여 속성을 연 다음:
- 속성 탭을 선택하세요
- 필터 조건 편집기를 클릭하세요.
단계 7) 그런 다음 필터 조건식 편집기에서 다음과 같이 합니다.
- 필터 조건을 입력하세요 - deptno=10
- 확인 버튼을 선택하세요
단계 8) 이제 다시 변환 편집 창의 속성 탭에서 필터 조건을 확인할 수 있습니다. 확인 버튼을 선택하세요.
이제 지도를 저장하세요ping 생성 후 실행합니다. 세션 워크플로우대상 테이블에는 deptno=10인 레코드만 로드됩니다.
이와 같이 필터 변환을 사용하여 원본 레코드를 필터링할 수 있습니다.
필터 vs 라우터 vs 소스 한정자 필터
Informatica에서는 원치 않는 행을 제거할 수 있는 세 가지 객체가 있으며, 잘못된 객체를 선택하면 성능 저하 또는 거부된 데이터의 가시성 문제가 발생할 수 있습니다.
| 목적 | 행이 제거되는 방법 | 그것을 선택할 때 |
|---|---|---|
| 필터 변환 | 변환당 하나의 조건만 적용됩니다. FALSE를 반환하는 행은 삭제되고 세션 로그에 기록됩니다. | 지도 내부에 적용되는 단 하나의 간단한 규칙ping. |
| 라우터 변환 | 한 번에 여러 그룹 조건을 적용합니다. 어떤 그룹에도 속하지 않는 행은 기본 그룹으로 이동합니다. | 행을 여러 스트림으로 분할하거나, 거부된 행을 캡처해야 합니다. |
| 소스 한정자 필터링 | 해당 조건은 관계형 데이터베이스에서 읽어온 SQL 쿼리의 WHERE 절의 일부가 됩니다. | 원본 데이터는 관계형 데이터베이스이며, 원치 않는 행은 절대 데이터베이스 밖으로 반출되어서는 안 됩니다. |
라우터 하나는 들어오는 데이터를 한 번만 읽지만, 동일한 입력을 테스트하는 여러 필터 변환이 있는 경우 통합 서비스는 각 변환마다 해당 데이터를 다시 처리합니다. 소스 한정자 필터는 제외되는 항목을 제한합니다.trac소스에서 가져온 내용을 필터링하는 반면, 필터 변환은 대상으로 전송되는 내용을 제한합니다.
필터 변환 성능 향상을 위한 팁
필터 조건은 변환에 도달하는 모든 행에 대해 평가되므로 객체가 맵에서 어디에 위치하는지 알 수 있습니다.ping 세션 시간에 직접적인 영향을 미칩니다.
- 원치 않는 행이 이후 변환을 거치지 않도록 필터 변환을 소스에 최대한 가깝게 배치하십시오.
- 소스가 관계형 데이터베이스인 경우, 데이터베이스가 통합 서비스보다 행을 더 빠르게 필터링하므로 소스 한정자에 조건을 추가하십시오.
- 조건을 단순하게 유지하세요. 복잡한 표현식은 표현식 변환으로 옮겨 필터가 테스트하는 단일 플래그 포트로 간소화할 수 있습니다.
- 동일한 입력을 테스트하는 여러 필터 변환 대신 하나의 라우터를 사용하면 들어오는 데이터를 한 번만 읽게 됩니다.
- 기본 조건은 TRUE이므로 필터를 구성하지 않으면 모든 항목이 통과되어 오류가 숨겨진다는 점을 기억하세요.
삭제된 모든 행은 세션 로그에 메시지로 기록되므로, 예상치 못하게 비어 있는 대상은 맵을 다시 실행하는 것보다 해당 로그를 읽는 것으로 원인을 파악하는 경우가 많습니다.ping.









