이 블로그 게시물에서는 Oracle® GoldenGate® 및 그 기능의 기본 사항을 살펴봅니다. 데이터베이스 아키텍처에서 분리되어 있기 때문에 GoldenGate는 트랜잭션 변경 데이터 캡처 및 통합의 이기종 및 동종 실시간 캡처를 용이하게 합니다.
오라클 GoldenGate 소개
Oracle GoldenGate는 한 데이터베이스에서 다른 데이터베이스로 데이터를 복제, 필터링 및 변환할 수 있는 소프트웨어 제품입니다.
Oracle 데이터베이스와 기타 지원되는 이기종 데이터베이스 간의 데이터 복제를 가능하게 합니다.
GoldenGate를 사용하는 이유
GoldenGate를 사용하는 몇 가지 이유는 다음과 같습니다.
- 데이터 이동이 실시간으로 이루어지며 지연 시간이 줄어듭니다.
- 약정된 트랜잭션만 이동하여 일관성을 유지하고 성능을 향상시킵니다.
- 다양한 운영 체제에서 실행되는 다양한 이기종 데이터베이스와 함께 다양한 버전 및 릴리스의 Oracle 데이터베이스가 지원됩니다.
- 간단한 아키텍처를 사용하고 구성이 쉽습니다.
- 기본 데이터베이스 및 인프라에 대한 최소한의 오버헤드로 고성능을 제공합니다.
GoldenGate가 지원하는 비즈니스 요구 사항
GoldenGate를 사용하여 다음 비즈니스 요구 사항을 충족하십시오.
- 무중단 업무 운영 및 고가용성
- 다운타임 없이 초기 로드 및 데이터베이스 마이그레이션 및 업그레이드
- 데이터 통합
- 실시간 보고
GoldenGate 사용법
단순한 단방향 아키텍처에서 보다 복잡한 P2P 아키텍처에 이르기까지 구성할 수 있는 다양한 아키텍처가 있습니다. GoldenGate에서 지원하는 다양한 토폴로지를 보려면 다음 이미지를 참조하십시오.
이미지 출처: https://www.vitalsofttech.com/goldengate-replication-topologies/
GoldenGate 논리 아키텍처
다음 이미지는 이 섹션에서 설명하는 GoldenGate 아키텍처의 구성 요소 또는 프로세스를 보여줍니다.
이미지 출처 :https://www.vitalsofttech.com/wp-content/uploads/2013/06/GoldenGate-Replication.jpg
관리자
관리자는 다른 GoldenGate 프로세스를 시작하는 프로세스입니다. 이 프로세스는 구성을 위해 소스 및 대상 시스템 모두에서 실행되어야 하며 다른 모든 GoldenGate 프로세스를 시작해야 합니다. 또한 관리자 프로세스는 이전 트레일을 제거하거나 파일을 추출하여 디스크 공간을 할당합니다. 모든 GoldenGate 설치에는 하나의 관리자 프로세스가 필요합니다.
추출
추출 프로세스에는 데이터 캡처라고 하는 데이터 추출이 포함됩니다. 인골든게이트. 추출은 소스마이닝 데이터베이스에 대해 실행되도록 구성된 프로세스입니다.
Extract는 Oracle redo 로그에서 커밋된 DML(데이터 모델링 언어) 트랜잭션 및 DDL(데이터 정의 언어) 캡처를 담당합니다. Extract는 이러한 데이터 변경 사항을 추적 또는 추출 파일에 기록합니다.
트레일
추적은 GoldenGate가 캡처된 변경 사항을 저장하는 디스크의 일련의 파일로, 데이터베이스 변경 사항의 지속적인 추출 및 복제를 지원합니다. OS 수준에서 플랫폼 독립적인 바이너리 파일입니다.
복제본
Replicat은 데이터를 대상 데이터베이스에 전달하는 프로세스입니다. 대상 데이터베이스의 흔적을 읽고 DML 또는 DDL 작업을 재구성하고 대상 데이터베이스에 적용합니다.
펌프
추출 프로세스이기도 한 펌프 프로세스는 GoldenGatesetup에서 선택 사항입니다. 이 프로세스는 데이터가 포함된 추적 파일을 대상 시스템에 복사합니다.
체크포인트
추출 펌프 및 Replicat 프로세스는 각각의 진행 상황을 추적하기 위해 체크포인트를 사용합니다. 이 메커니즘은 추적 파일에서 검색되거나 적용된 데이터 변경 사항의 위치를 표시합니다. 이는 프로세스가 데이터 손실 없이 복구해야 하거나 실패 후 시작점을 알아야 할 때 유용합니다.
수집가
수집기 프로세스는 대상 시스템에서 실행되며 RMTTRAIL이라고 하는 대상 추적 파일에 소스 데이터베이스의 데이터 변경 사항을 기록합니다. .RMTTRAIL에 복사하기 전에 , 컬렉터는 파일을 재조립합니다.
GoldenGate 캡처 모드
Oracle GoldenGate는 이 섹션에서 설명하는 다음과 같은 캡처 유형을 지원합니다.
- 클래식 캡처
- 통합 캡처
클래식 캡처 모드
클래식 캡처는 가능한 경우 온라인 리두 로그 및 아카이브된 리두 로그에서 데이터를 직접 읽는 원래의 GoldenGate 캡처 메커니즘입니다. 필요한 경우 데이터베이스 파일에서 추가 데이터를 가져올 수 있습니다.
통합 캡처 모드
Oracle GoldenGate 버전 11.2.1에 도입된 통합 캡처(IC)는 Integrated Extract 11.2.x(MOS Note 1411356.1)용 11.2.0.3 데이터베이스별 번들 패치와 함께 Oracle 11.2.0.3에서 처음에 사용할 수 있었습니다. IC는 DataGuard 논리적 대기 또는 Oracle 스트림과 유사한 소스 시스템 또는 다운스트림 Oracle 데이터베이스에서 alog-mining 서버를 사용합니다.
IC는 소스 데이터베이스 내부로 이동한 새로운 형태의 추출 프로세스입니다. 기존의 클래식 추출 프로세스에서 추출은 실제 데이터베이스 도메인 외부의 로그에서 작동합니다. IC에서는 모든 DML 데이터와 DDL 문(생성, 변경, 삭제 등)을 추출하고 논리적 변경 레코드(LCR)를 생성하는 서버 로그 마이너 프로세스가 시작됩니다. 그런 다음 이러한 레코드는 LCR을 로컬 트레일 파일에 쓰는 GoldenGate 메모리 프로세스로 전달됩니다.
GoldenGate 복제 모드
버전 12.1 릴리스 이전에는 Replicat이 대상 데이터베이스에 트랜잭션을 순차적으로 적용했습니다. 병렬화를 달성하기 위해 테이블은 더 빠른 데이터 적용과 감소된 지연을 위해 다중 복제로 분할되어야 했습니다. 이 접근 방식의 단점은 여러 복제 및 추적 파일을 수동으로 구성하고 복제 간에 외래 키 관계가 있는 테이블을 분할할 수 없다는 한계가 있다는 점입니다.
조정되고 통합된 새로운 Replicat 모드를 사용하면 테이블을 수동으로 여러 복제로 분할할 필요 없이 대상 데이터베이스에서 병렬로 트랜잭션을 적용할 수 있습니다.
다음 섹션에서는 다양한 Replicat 모드에 대해 설명합니다.
클래식 복제
기존 Replicat에서 대상 데이터베이스 체크포인트는 커밋된 트랜잭션과 커밋되지 않은 트랜잭션을 시스템에 알려줍니다. 이것은 트랜잭션 복제의 핵심 측면입니다.
Classic Replicat의 특징은 다음과 같습니다.
- SQL을 순차적으로 적용합니다.
- 데이터베이스 버전이 11.2.0.4 미만인 경우 사용해야 합니다.
다음 이미지는 클래식 Replicat을 보여줍니다.
이미지 출처 :https://docs.oracle.com/GoldenGate/1212/gg-winux/GIORA/img/integratedapply.jpg
조정된 복제물
구성된 Replicat을 코디네이터라고 합니다. 이 프로세스는 지정된 스레드 수에 따라 추가 복제를 시작합니다. 복제 이름은 5자로 제한되며 스레드 복제에는 이 이름에 3자리 숫자가 추가됩니다(예:RGGMA, RGGMA001, RGGMA002 등). Coordinator는 SQL을 스레드에 전송하며, 이는 병렬 및 커밋되지 않은 순서로 적용될 수 있습니다.
다음 이미지는 조정된 Replicat을 보여줍니다.
이미지 출처 :https://www.red-gate.com/simple-talk/sql/oracle/oracle-GoldenGate-12c-new-features-part-2/
통합 복제본
Integrated Replicat에는 다음과 같은 특징이 있습니다.
- 소스 데이터베이스 DML 트랜잭션을 나타내는 LCR을 구성합니다(커밋된 순서대로). DDL은 Replicat에 의해 직접 적용됩니다. 이러한 트랜잭션은 병렬로 적용될 수 있습니다.
- 경량 스트리밍 인터페이스를 통해 데이터베이스 인바운드 서버로 알려진 대상 데이터베이스의 백그라운드 프로세스에 연결합니다.
- 대상 데이터베이스에 데이터를 적용하는 인바운드 서버로 LCR을 전송합니다.
다음 이미지는 통합된 Replicat을 보여줍니다.
이미지 출처 :https://docs.oracle.com/GoldenGate/1212/gg-winux/GIORA/process_mode.htm#GIORA212
결론
이 블로그에서는 GoldenGate를 사용하는 방법과 이유를 설명하고 아키텍처 및 구성 요소에 대해 논의했습니다. 또한 캡처 모드와 도구에 통합된 복제 모드에 대해 자세히 설명했습니다.
피드백 탭을 사용하여 의견을 남기거나 질문하십시오.