본문 바로가기

Oracle GoldenGate2

OGG Control LAGs v1.0

OGG Control LAGs

 

Date

Ver

Etc.

12.08.13

 

 

 

 

 

 

 

 

 

 

1.   Control LAGs

OGG 에서 Source 에서 Target Database 에 이르기까지 LAGs 이 존재한다.

그리고 그 LAGs 를 조정하기 위해 다음과 같은 파라미터를 사용한다.

 

EOFDELAY | EOFDELAYCSEC

FLUSHSECS | FLUSHCSECS

GROUPTRANSOPS

MAXTRANSOPS ( * Reference 에는 LAGs 를 조정하기 위한 파라미터로 언급되어 있진 않음 )

 

2.   Detail information

a.    EOFDELAY | EOFDELAYCSECS

DEFAULT : 1

1 | 1/100 , Extract, data pump, replicat 에 사용

데이터 소스의 도달된 마지막 데이터 이후의 새로운 데이터 들에 대한 체크 빈도를 조정

 

b.    FLUSHSECS | FLUSHCSECS

DEFAULT : 1

1 | 1/100 , Extract 에 사용

파라미터에 지정 된 시간이 지나거나 버퍼공간을 전부 사용, 데이터를 원격 시스템으로 보낼 때 flush 한다.

 

파라미터의 조정으로 네트워크 사용량을 약간 개선할 수 있다.

하지만 소스 시스템의 활동성이 낮고 버퍼를 다 사용하지 못하는 경우 타겟 시스템에 대한 지연증가로 이어질 수 있다.

 

c.    GROUPTRANSOPS

DEFAULT : 1000 operations

min 오퍼레이션 수, Replicat 에 사용

그룹으로 만들어 질 최소의 오퍼레이션수를 타겟 데이터 베이스에 지정한다.

 

d.    MAXTRANSOPS

100,000,000

단일 트랜잭션 그룹으로 들어갈 최대 Operation 숫자

타겟에서 하나의 대규모 트랜잭션을 컨트롤하지 못하는 경우 Replicat 은 메모리 에러로 중단 될 수 있다.

회피를 위해 Replicat 의 트랜잭션을 작게 분할하며 MAXTRANSOPS 를 사용한다.

 

3.    Translation

(Ref.A 를 번역)

<Disk I/O 병목을 제거>

 

I/O 활동은 Extract Replicat 에 병목 현상을 유발할 수 있다.

-      일반적으로 Extract 는 트레일 파일에 대한 디스크 쓰기와 데이터 소스에 대한 읽기를 발생시킨다.

-      데이터 펌프와 Replicat local trail 에 대해 디스크 읽기를 유발한다.

-      각 프로세스는 규칙적으로 스케쥴에 따라 체크포인트 파일에 recovery checkpoint 를 기록한다.

 

System 구성안에서 I/O 성능을 증가시키기 위해선

TRAIL 파일을 가장 빠른 디스크 CONTROLLER 에 위치시킨다.

RAID 구성은 RAID 5 보다 RAID 0+1 에 위치시킨다.

 

OGG 구성을 변경해 I/O 를 개선하기 위해선

다음의 파라미터 값을 증가시킨다.

 

CHECKPOINTSECS : Extract, Replicat 이 각 checkpoints 를 얼마나 자주 수행할지를 결정

 

GROUPTRANSOPS : Replicat transaction 이 포함 할 SQL Operation 수를 조정한다.

-      Replicat 에 의해 수행 될 트랜잭션 수를 감소시킨다.

-      Checkpoint file checkpoint 테이블에 대한 I/O 활동을 감소시킨다.

l  Replicat 은 스케쥴 되어 있는 체크포인트와 transaction 을 타겟에 적용할 때를 포함해 checkpoint 를 실시한다.

l  Transaction A 500 개의 오퍼레이션을 가지고 transaction B 600 개의 오퍼레이션을 포함하면, Replicat transaction GROUPTRANSOPS 의 기본값인 1000 개로 셋팅되어 있더라도 1100 개의 오퍼레이션을 포함한다. 반대로 Trail 안에 더 수행 할 데이터가 없는 경우 셋팅된 값에 도달하기 전에 트랜잭션을 적용한다.

l  GROUPTRANSOPS 에 큰 값을 셋팅하게 되면 source target 사이에 동기화 지연이 커질 수 있다.

 

EOFDELAY | EOFDELAYCSECS : Extract, data pump, replicat 이 새로운 데이터를 얼마나 자주 체크할 지 빈도를 결정한다. 이 파라미터는 SOURCEISTABLE 을 사용하는 경우 유효하지 않다.

 

 

MAXTRANSOPS 의 사용

 

타겟 데이터베이스가 대형 트랜잭션을 수용할 환경이 되지 않는 경우 사용될 수 있다.

예를 들어 타겟에서 1백만 로우를 삭제할 롤백세그먼트 공간이 충분하지 않을 때,

MAXTRANSOPS 10000 을 사용하여 10,000 삭제 후 commit 을 하도록 강제할 수 있다.

 

4.    References

A.     Oracle GoldenGate Windows and UNIX Troubleshooting and Tuning Guide 11g Release 1

B.     Oracle GoldenGate Windows and UNIX Reference Guide 11g Release 2