EXAMPLE을 사용한 Informatica의 조이너 변환
⚡ 스마트 요약
Informatica의 Joiner 변환은 일치하는 조건에 따라 두 개의 이기종 소스를 결합하는 활성 연결 객체이며, 세부 파이프라인이 이를 통해 스트리밍되는 동안 마스터 파이프라인은 메모리에 캐싱됩니다.

조이너 변환이란 무엇입니까?
조이너 변환은 Informatica에서 조인을 생성할 수 있는 옵션을 제공하는 활성 연결 변환입니다. 조이너 변환을 사용하여 생성된 조인은 데이터베이스의 조인과 유사합니다. 조이너 변환의 장점은 이기종 시스템(서로 다른 데이터베이스)에 대한 조인을 생성할 수 있다는 것입니다.
Joiner 변환에서는 조인에 사용할 두 가지 소스가 있습니다. 이 두 소스는 다음과 같습니다.
- 마스터 소스
- 상세 소스
Joiner 변환의 속성에서 어떤 데이터 소스를 마스터 소스로, 어떤 소스를 상세 소스로 사용할지 선택할 수 있습니다.
실행 중에 마스터 소스는 조인 목적으로 메모리에 캐시됩니다. 따라서 레코드 수가 적은 소스를 마스터 소스로 선택하는 것이 좋습니다. 마스터 파이프라인은 두 개의 캐시에 저장됩니다. 하나는 조인 조건에 사용되는 값을 저장하는 인덱스 캐시이고, 다른 하나는 나머지 행 데이터를 저장하는 데이터 캐시입니다.
조이너 변환의 조인 유형
속성 탭의 조인 유형 속성은 일치하는 행을 찾지 못한 행에 대해 수행할 작업을 결정합니다. 조이너 변환을 사용하여 다음과 같은 조인을 생성할 수 있습니다.
- 마스터 외부 조인 마스터 외부 조인에서는 상세 소스의 모든 레코드가 조인 결과로 반환되고 마스터 소스에서는 일치하는 행만 반환됩니다.
- 세부 외부 조인 – 상세 외부 조인에서는 상세 소스에서 일치하는 행만 반환되고 마스터 소스에서는 모든 행이 반환됩니다.
- 전체 외부 조인 – 완전 외부 조인에서는 두 소스의 모든 레코드가 반환됩니다.
- 일반 조인 일반적인 조인에서는 두 소스에서 일치하는 행만 반환됩니다.
마스터 외부 접합과 상세 외부 접합은 왼쪽 외부 접합과 동일합니다. SQL각 유형은 한 소스의 모든 행을 유지하고 다른 소스에서는 일치하는 행만 유지합니다. 아래 표는 네 가지 유형을 해당 SQL 유형과 비교한 것입니다.
| 조인 유형 | 마스터에서 유지된 행 | 세부 정보에서 유지된 행 | SQL에 해당하는 내용 |
|---|---|---|---|
| 일반 조인 | 일치하는 항목만 | 일치하는 항목만 | 내부 조인 |
| 마스터 외부 조인 | 일치하는 항목만 | 모든 행 | 상세 소스의 왼쪽 외부 조인 |
| 세부 외부 조인 | 모든 행 | 일치하는 항목만 | 마스터 소스의 왼쪽 외부 조인 |
| 전체 외부 조인 | 모든 행 | 모든 행 | 전체 외부 조인 |
조인 유형은 구조적 선택 사항이 아니라 속성이므로 맵을 다시 빌드하지 않고도 나중에 변경할 수 있습니다.ping 또는 포트를 다시 연결하는 것.
Informatica에서 Joiner 변환을 사용하는 방법
이 예제에서는 Joiner 변환을 사용하여 emp 테이블과 dept 테이블을 조인합니다. 아래의 8단계를 순서대로 따라 진행하세요.ping 디자이너.
단계 1) 아래 스크립트를 사용하여 데이터베이스에 EMP_DEPTNAME이라는 새 대상 테이블을 생성하고 Informatica 대상에 해당 테이블을 가져옵니다.
위의 emp_deptname.sql 파일을 다운로드하세요.
단계 2) 새 항목 만들기 지도ping 소스 테이블 "EMP"와 "DEPT" 및 이전 단계에서 생성한 대상 테이블을 가져옵니다. 이제 아래 그림과 같이 세 가지 정의가 캔버스에 모두 표시됩니다.
단계 3) 변환 메뉴에서 만들기 옵션을 선택합니다. 그런 다음 아래 그림과 같은 변환 만들기 창에서
- 조이너 변환 선택
- 변환 이름 "jnr_emp_dept"를 입력하세요.
- 생성 옵션 선택
단계 4) 양쪽에서 모든 열을 끌어서 놓습니다. 소스 한정자 Joiner 변환으로 이동합니다. 스크린샷에서 볼 수 있듯이 두 파이프라인 모두 이제 jnr_emp_dept에 연결되었습니다.
단계 5) Double Joiner 변환을 클릭한 다음 변환 편집 창에서
- 조건 탭 선택
- 새 조건 추가 아이콘을 클릭하세요.
- 마스터 및 세부 열 목록에서 부서 번호를 선택하세요.
이제 조건 탭에는 부서 번호에 대한 단일 조인 조건이 포함됩니다.
단계 6) 그럼 같은 창에서
- 속성 탭 선택
- 조인 유형으로 일반 조인을 선택하세요
- 확인 버튼을 선택하세요
다음으로는 조인 유형이 설정된 속성 탭이 표시됩니다.
성능 최적화를 위해 레코드 수가 더 적은 소스 테이블 파이프라인에 마스터 소스를 할당합니다. 이 작업을 수행하려면 다음 단계를 따르세요.
단계 7) Double Joiner 변환을 클릭하여 변환 편집 창을 연 다음
- 포트 탭 선택
- 마스터로 만들려는 특정 소스의 열을 선택하세요.
- OK를 선택합니다
포트 탭에서는 아래 그림과 같이 선택한 파이프라인을 마스터로 지정합니다.
단계 8) Joiner 변환의 관련 열을 대상 테이블에 연결합니다. 맵ping 이제 두 소스 모두에서 EMP_DEPTNAME으로 조인하여 실행됩니다.
이제 지도를 저장하세요ping 생성 후 실행합니다. 세션 워크플로우 이를 위해 Informatica Joiner를 사용하여 조인을 생성하고 두 테이블에서 관련 세부 정보를 가져옵니다.
조이너 변환 속성
속성 탭에는 조인 유형 외에도 더 많은 설정이 있습니다. 아래 설정은 조인에 사용되는 메모리 양과 캐시 파일이 기록되는 위치를 제어합니다.
| 환경 | 그것이 제어하는 것 |
|---|---|
| 조인 유형 | 일반, 마스터 외부, 상세 외부 또는 전체 외부 중에서 선택할 수 있습니다. 일치하지 않는 행을 유지할지 여부를 결정합니다. |
| 가입 조건 | 마스터-디테일 포트 쌍 목록을 같음 연산자와 비교합니다. 여러 조건을 AND로 결합합니다. |
| 정렬된 입력 | 두 파이프라인 모두 조건 포트별로 정렬되어 도착하므로 통합 서비스가 디스크 입력 및 출력을 최소화할 수 있음을 선언합니다. |
| 마스터 정렬 순서 | 정렬된 입력 데이터와 함께 사용되는 마스터 소스 데이터의 정렬 순서입니다. |
| 캐시 디렉터리 | 인덱스 및 데이터 캐시 파일이 생성되는 디렉터리입니다. 기본값은 프로세스 변수 `$PMCacheDir`입니다. |
| 조이너 데이터 캐시 크기 | 마스터 행 데이터를 저장하는 데이터 캐시의 크기입니다. 기본값은 자동이며, 이 경우 통합 서비스에서 캐시 크기를 자동으로 조정합니다. |
| 조이너 인덱스 캐시 크기 | 마스터 조건 값을 저장하는 인덱스 캐시의 크기입니다. 기본값은 자동입니다. |
| 변환 범위 | 조인을 각 트랜잭션, 모든 수신 데이터 또는 행 수준 범위에 적용합니다. |
정렬된 입력은 가장 먼저 시도해 볼 만한 설정입니다. 두 파이프라인이 조건 포트별로 정렬되어 도착하면 통합 서비스는 매칭을 시작하기 전에 전체 마스터 소스를 보유할 필요가 없습니다. 이는 매칭 과정에서 적용되는 것과 동일한 원칙입니다. 성능 조정 다른 캐시된 변환.
조이너 변환 규칙 및 제한 사항
일부 제한 사항은 지도를 사용할 때만 나타납니다.ping 검증이 완료되었으므로 포트가 연결되기 전에 해당 정보를 파악하는 것이 더 저렴합니다.
- 오직 평등만이 답이다. 조인 조건은 같음 연산자를 사용하여 포트를 비교합니다. 보다 큼, 보다 작음 또는 같지 않음과 같은 비교 연산자는 조건에서 허용되지 않습니다.
- 데이터 형식이 일치합니다. 조건의 두 포트는 모두 동일한 데이터 형식을 가져야 합니다. 디자이너는 이를 검증하므로, 데이터 형식이 일치하지 않는 열은 먼저 변환해야 하며, 일반적으로 표현식 변환을 사용합니다.
- 상위 시스템에 업데이트 전략이 없습니다. 입력 파이프라인 중 하나라도 업데이트 전략 변환을 포함하는 경우 조이너 변환을 사용할 수 없습니다.
- 순서 없음 Generator 바로 직전에. 순서 연결하기 Generator Joiner 바로 상류의 변환은 지원되지 않습니다.
- 캐싱은 끌 수 없습니다. 마스터 파이프라인은 항상 캐시되므로 소스 크기가 작은 것이 마스터 측에 있어야 하며, 대규모 조인에서 캐시 크기 조정이 중요한 이유입니다.
세 개의 소스를 결합하려면 각각 마스터 파이프라인과 디테일 파이프라인을 하나씩만 허용하기 때문에 두 개의 Joiner 변환을 연결해야 합니다. 두 번째 소스가 행 단위로 읽는 작은 참조 테이블인 경우에는 다른 변환이 필요합니다. 조회 변환 더 간단한 디자인인 경우가 많습니다.







