데이터베이스 연구실.log

테이블과 행 선택 복제

테이블 나열, 제외와 행 조건 복제를 구분하고 조건 컬럼 변경으로 생기는 타깃 잔존 행

TABLETABLEEXCLUDEMAPEXCLUDEWHEREFILTER

#핵심 요약

실습에서는 TABLE 나열, TABLEEXCLUDE, MAPEXCLUDE로 복제 테이블을 선택함

행 선택은 Replicat MAP의 WHERE 또는 FILTER로 실습함

조건 컬럼이 바뀌면 타깃에 불필요한 행이 남거나 기존에 없던 행을 UPDATE하게 될 수 있음

#개념과 동작 원리

방식 선택 위치와 동작
TABLE 나열 Extract가 EMP, DEPT만 캡처하며 새 테이블은 목록에 추가해야 함
TABLEEXCLUDE 와일드카드 대상에서 SALGRADE를 제외하며 새 테이블은 포함될 수 있음
MAPEXCLUDE 전체를 캡처, 전송한 뒤 Replicat에서 제외하므로 원래 트레일과 전송 부담이 남음
WHERE 컬럼과 상수 비교로 행을 선택하는 예제임
FILTER 계산식, 함수와 ON INSERT, ON UPDATE 등 연산 종류를 지정하는 예제임

실습에서는 Extract에서 테이블을 걸러 전송량을 줄이는 구성과 하나의 트레일을 여러 Replicat이 나누어 처리하는 구성을 구분함 TABLEEXCLUDE의 적용 범위는 트레일 지정 파라미터 앞이면 전체, 뒤면 해당 트레일로 설명하며 예제의 제외문에는 세미콜론이 없음 이 위치 규칙과 WHERE, FILTER의 속도 차이는 확인 불가

#필수 명령어 또는 SQL

소스 EXT1·PMP1 파라미터의 대상 목록객체 또는 설정을 변경함
TABLE scott.emp;
TABLE scott.dept;
타깃 REP1 파라미터의 대상 목록객체 또는 설정을 변경함
MAP scott.emp, TARGET scott.emp;
MAP scott.dept, TARGET scott.dept;

결과 해석: 실습에서는 설정 후 추가한 SALGRADE 행은 전달되지 않고 EMP 변경은 전달되는 것을 확인하도록 함 실습에서는 앞서 추가한 GRADE 6이 있는데도 최종 건수를 여전히 5건이라고 적고, 소스 이름 조건과 타깃 EMPNO 7369 조회의 대상이 달라 실제 동일 행 검증으로 사용할 수 없음

소스 EXT1 파라미터의 TABLEEXCLUDE 대안객체 또는 설정을 변경함
TABLEEXCLUDE scott.salgrade
EXTTRAIL ./dirdat/lt
TABLE scott.*;
타깃 REP1 파라미터의 MAPEXCLUDE 대안객체 또는 설정을 변경함
MAPEXCLUDE scott.salgrade
MAP scott.*, TARGET scott.*;

결과 해석: MAPEXCLUDE 실습은 SALGRADE가 Extract 통계에는 나타나지만 타깃에는 반영되지 않는 것으로 설명함

타깃 REP1 파라미터 (행 선택, 별도 대상 테이블 준비 후)객체 또는 설정을 변경함
MAP scott.emp, TARGET scott.emp_d10,
WHERE (deptno = 10);

MAP scott.emp, TARGET scott.emp_high,
FILTER (ON INSERT, ON UPDATE, @COMPUTE (sal * 12) >= 36000);

결과 해석: 실습 기대값은 부서 10 행만 EMP_D10에, 연 급여 계산 조건에 맞는 행만 EMP_HIGH에 들어가는 것임 다른 MAP을 유지하는 전체 복제와 별도의 선택 복제 대상 테이블을 함께 비교하는 실습임

GoldenGate GGSCI조회만 함
VIEW PARAMS EXT1
VIEW PARAMS PMP1
VIEW PARAMS REP1
VIEW REPORT EXT1
VIEW REPORT REP1
STATS EXTRACT EXT1, TOTAL
STATS REPLICAT REP1, TOTAL

결과 해석: 실습에서는 파라미터와 리포트의 실제 대상 목록, 처리 건수, ABEND 유무를 확인하도록 하며 전체 출력은 기재 없음

#사용 조건과 주의사항

INSERTMISSINGUPDATES는 없는 행 UPDATE 대응으로 소개되지만 조건 밖으로 나간 행의 자동 삭제까지 해결하지는 않는다고 적혀 있음 실습에서는 변경이 드문 컬럼을 선택 조건으로 쓰거나 전체 복제 후 타깃 뷰로 제한하는 방식을 제시함 문자열 WHERE 예제와 필터 해제 문법표의 NOUSEANSISQLQUOTES 조건이 일치하지 않아 설정 유지 여부는 확인 불가 필터 해제는 제외 기간의 데이터를 자동으로 다시 채우는 절차로 제시되지 않으며 실습에서는 별도 정합성 정리를 수행함

SEO_HKabsumveritas@gmail.comBuilt with Claude Code & Codex

마지막 갱신 개인 학습 기록이며 운영 환경 적용 전 공식 문서 확인 필요

두 글자 이상 입력, 위아래 화살표로 이동하고 Enter로 열기