Coordinated Replicat 개요
- Coordinated Replicat은 복제를 병렬로 처리하기 위해 여러 개의 쓰레드를 사용하는 복제 유형입니다.
- 각 쓰레드는 독립적으로 트랜잭션을 처리하지만, 전체적으로는 단일 Replicat 인스턴스처럼 작동합니다.
- 처리 속도 향상을 위해 설계되었으며, 고성능 복제 환경에 적합합니다.
작동 방식
- Replicat 프로세스는 여러 개의 쓰레드로 구성되어 있고, 각 쓰레드는 서로 다른 트랜잭션을 병렬로 처리합니다.
- 쓰레드는 복제 데이터를 받아들여 정해진 기준에 따라 트랜잭션을 분배받습니다.
- 트랜잭션은 충돌을 피하기 위해 키 매핑 또는 해시 알고리즘을 사용하여 특정 쓰레드에 할당됩니다.
장점
- 병렬 처리로 인해 데이터 적재 속도 및 처리량이 증가
- 단일 Replicat보다 더 많은 트랜잭션을 동시에 처리
- 고성능 데이터 웨어하우징 및 분석 시스템에서 효과적
내용 요약
- Replicat 프로세스 STOP
- Replicat 프로세스 INFO - seqno, rba 확인
- Replicat 프로세스 Edit Param - THREADRANGE(n)
- Replicat 프로세스 ADD - maxthreads
- Replicat 프로세스 START - NOFILTERDUPTRANSACTIONS
- Replicat 프로세스 Edit Param 또는 DELETE REPLICAT rep1
1. Replicat 프로세스 STOP
- replicat 프로세스 중지
- (threadrange 사용하는 경우) synchronize rep
GGSCI> stop rep1
GGSCI> synchronize rep rep1 ------>> Threadrange
2. Replicat 프로세스 INFO - seqno, rba 확인
- Replicat 프로세스 중지 후 seqno, rba 확인
GGSCI> info rep1
REPLICAT REP1 Last Started 2024-02-10 16:42 Status STOPPED
COORDINATED Coordinator MAXTHREADS 25
Checkpoint Lag 05:49:52 (updated 00:00:03 ago)
Log Read Checkpoint File ./dirdat/a1000052287 ------>> a1 제외한 뒤의 숫자(seq)
2024-01-18 09:30:44.366131 RBA 362665405 ----->> RBA 값 362665405
3. Replicat 프로세스 Edit Param - THREADRANGE(1-n)
-- Threadrange 적용할 replicat param 조회
GGSCI> view param rep1
REPLICAT rep1
USERID ogg, PASSWORD oracle
REPERROR 1403, DISCARD
REPERROR 1, DISCARD
DISCARDFILE ./dirrpt/rep1.dsc , append megabytes 2000
---- TABLE List
MAP TEST.TEST , TARGET TEST.TEST ;
-- 신규 프로세스 생성
GGSCI> edit param rep2
REPLICAT rep2
USERID ogg, PASSWORD oracle
REPERROR 1403, DISCARD
REPERROR 1, DISCARD
DISCARDFILE ./dirrpt/rep2.dsc , append megabytes 2000
---- TABLE List
MAP TEST.TEST , TARGET TEST.TEST, THREADRANGE(1-8);
4. Replicat 프로세스 Add 추가
-- replicat 추가
dblogin userid ogg, password oracle
add rep REP2, COORDINATED , exttrail ./dirdat/a1, maxthreads 16
-- replicat ext 추출시점 변경
alter rep REP2, extseqno 52287, extrba 362665405
5. Replicat 프로세스 START
-- 신규 threadrange 적용한 replicat 프로세스 기동
start REP2, NOFILTERDUPTRANSACTIONS
-- DML 처리속도 확인
stats REP2 , reportrate sec , table test.*
info REP2
info REP2, detail
6. 기존 Replicat 프로세스 삭제 & 수정
- 삭제 : replicat 프로세스 1개의 테이블만 사용한 경우(다시 start할 필요없음)
- 수정 : replicat 프로세스 n개의 테이블을 사용한 경우(다시 start해야함)
-- 삭제 : replicat 프로세스에서 1개의 테이블만 사용한 경우(다시 start할 필요없음)
delete rep1
-- 수정 : replicat 프로세스에서 n개의 테이블을 사용한 경우(다시 start해야 함)
/*
A,B,C,D 총4개의 테이블에서 C테이블만 분리했다면..
나머지 A,B,D 테이블은 계속 동기화해야하므로, C테이블만 주석처리하고 재기동
*/
edit param rep1 -----> MAP C 테이블 주석처리
-- replicat 기동
start rep1
반응형
'Oracle Database Admin > Oracle Golden Gate(OGG)' 카테고리의 다른 글
OGG 연동 테이블 추가 (0) | 2025.03.08 |
---|---|
OGG 추가 시 주의사항 정리 (0) | 2025.03.02 |
OGG 명령어 정리 (0) | 2025.03.02 |