추출용 MAP

유효 기간

Extract

설명

추출 매개변수 파일에서 MAP를 사용하여 Oracle GoldenGate가 테이블에 대해 저장하는 트랜잭션의 이름을 변경할 수도 있습니다.

예를 들어, scott.emp 테이블을 캡처하는 것이 좋습니다. 첫번째 사용 사례의 경우 이를 캡처하여 동일한 구조를 가진 scott.emp라는 다른 테이블에 모든 변경 사항을 적용하지만, 다른 열 집합을 사용하여 scott.emp를 캡처하고 이를 scott.emp_old라는 테이블에 복제하려고 합니다. 이 작업을 수행하려면 다음과 유사한 Extract 매개변수 파일이 필요합니다.

TABLE scott.emp;
MAP scott.emp,
cols(emp_no, employee_name),
target scott.emp_old;

Replicat에서 다음 작업을 수행할 수 있습니다:

MAP *.*, target *.*;

그리고 scott.emp의 변경 사항은 scott.emp로 이동하며 scott.emp_old의 추적 데이터는 scott.emp_old로 이동합니다.

Extract가 클래식 캡처 모드로 작동 중인 경우 Extract에 대해 MAP 매개변수를 사용합니다. 객체 ID를 객체 이름에 매핑하려면 이 매개변수의 ALTID 구성요소를 사용해야 합니다. Extract가 접속된 데이터베이스 이외의 데이터베이스에 의해 생성된 Oracle 트랜잭션 로그에서 Extract가 캡처 중인 경우 ALTID은 올바른 객체 ID를 지정합니다. Extract가 운용 트랜잭션을 캡처하기 위해 운용(소스) 데이터베이스에 직접 접속하도록 허용되지 않는 경우 이 구성이 필요합니다.

Extract가 소스 데이터베이스에 직접 접속할 수 없는 경우 실시간 대기 데이터베이스 또는 기타 facsimile 데이터베이스에 접속하지만 소스 데이터베이스에서 전송된 트랜잭션 로그를 읽습니다. 대체 데이터베이스의 카탈로그를 질의하면 Extract가 트랜잭션 데이터를 적합한 SQL 문으로 확장하는 데 필요한 메타데이터를 가져올 수 있지만, 이 질의에서 ID 객체를 사용할 수는 없습니다. 테이블에 대한 로컬 객체 ID는 소스 데이터베이스 및 트랜잭션 로그에 있는 해당 테이블의 객체 ID와 다릅니다. ALTID와 함께 MAP 문을 사용하여 각 테이블 이름을 소스 객체 ID에 수동으로 매핑해야 합니다.

ALTID와 함께 MAP 사용

기본값

없음

구문

MAP *[<container>.]<schema>.*<table>, ALTID <object_ID> [, <object_ID>]

[<container>.]<schema.table>

소스 테이블의 전체 이름입니다.

<object_ID>

운영(소스) 데이터베이스에 존재하는 테이블의 객체 ID입니다.

테이블이 분할된 경우 복제하려는 분할 영역의 객체 ID를 나열하여 각각 콤마로 구분할 수 있습니다.

예제

예 1

이 예제는 분할되지 않은 테이블이나 분할된 테이블의 한 분할 영역에만 매핑합니다.

MAP QASOURCE.T2, ALTID 75740;

예 2

이 예제는 분할된 테이블의 분할 영역을 매핑합니다.

MAP QASOURCE.T_P1, ALTID 75257,75258;