이번 포스팅에서는 A BD의 데이터를 B BD의 테이블에 이관하는 방법을 다룬 앞선 포스팅의 심화라고 할 수 있다.
두 개의 테이블에 나뉘어 저장된 데이터를 하나의 output DB에 한꺼번에 이관하는 방법을 알아볼 것이다.
1. 적당한 이름의 Job을 생성한다.

2. 이관 대상 테이블과 데이터가 이관될 테이블을 각각 가져와 팔레트에 생성한다.
-> 나는 전 국가 데이터를 갖고 있는 Oracle의 countries 테이블의 데이터와 아시아 국가 데이터만 가지고 있는 countries_asia 테이블의 데이터를 outputDB인 MySQL의 countries 테이블에 이관할 것이다.

3. 두 inputDB를 합쳐줄 tUnite 컴포넌트를 팔레트에 생성한다.

1) 이때, tUnite 컴포넌트의 스키마 생성에 유의한다. 나의 경우 Countries 테이블은 다음의 세 칼럼을 가지고 있다.

2) 반면 Countries_Asia 테이블은 두 개의 칼럼만 가진다.

3) input으로 가져오는 두 테이블의 스키마가 다른 경우 output 테이블의 스키마와 동일한 DB의 스키마를 가져온다.
-> Edit schema 옆에 위치한 네모를 클릭하면 다음과 같은 화면이 뜬다. 이때, 나는 Region_id 칼럼을 포함한 세 개의 칼럼을 가지는 input_1 DB를 선택하였고 tDBInput_1 스키마와 tUnite_1 스키마 사이에 위치한 화살표를 클릭하여 스키마를 복사했다.

4. tMap 컴포넌트를 생성하여 tUnite와 outputDB를 이어준다.

5. tMap을 더블클릭하여 각 칼럼을 매핑해준다.

6. Job 실행하면 두 개의 테이블에 나뉘어져있던 데이터가 하나의 MySQL 테이블에 정상 이관된 것을 확인할 수 있다.
-> region_id를 null로 가지는 데이터는 countries_asia에서 가져온 데이터이다. countries_aria 테이블은 region_id가 없었기 때문에 해당 테이블에서 가져온 데이터가 이관될 때 자동으로 default 값인 null이 입력된 채 이관되었다.

'TALEND' 카테고리의 다른 글
[TALEND] 병렬/순차적 프로그램 실행 (0) | 2020.12.30 |
---|---|
[TALEND] 다른 DB 테이블의 데이터 비교 (ORACLE - MARIA) (0) | 2020.11.30 |
[TALEND] 동시에 두 개 이상의 테이블에 데이터 이관하는 방법 (0) | 2020.03.30 |
[TALEND] A DB 데이터를 B DB 테이블로 이관하는 방법 (0) | 2020.03.30 |
[TALEND] Excel /XML 파일 DB 업로드 하는 방법 (0) | 2020.03.30 |