• 검색 결과가 없습니다.

Oracle GoldenGate

N/A
N/A
Protected

Academic year: 2022

Share "Oracle GoldenGate"

Copied!
25
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

Oracle GoldenGate

Data Foundation 사업부

유광일

(2)

Agenda

What is Oracle GoldenGate?

Architecture Components Installation

Administration

Trouble Shooting

(3)

Agenda

What is Oracle GoldenGate?

Architecture Components Installation

Administration

Trouble Shooting

(4)

What is Oracle GoldenGate?

Oracle GoldenGate History

1995, Eric Fish, Todd Davidson GoldenGate Software Inc.

Oracle acquired goldengate in 2009

(5)

What is Oracle GoldenGate?

OGG(Oracle GoldenGate)는 Source System의 Database Redo/Archive Log에 접근해,

변경 된 데이터만 추출하여 Target System Database에 데이터를 동기화 하는 CDC 솔루션 입니다.

Source Database

Target

Database

(6)

What is Oracle GoldenGate?

CDC Technology

Change Data Capture 변경 데이터를 복제하여 데이터를 동기화 하는 기술입니다.

유형 개요 특징

Trigger 방식

 대상 테이블에 Trigger 를 적용

 DML 발생시 로그 테이블에 기록하여 변경 데이터 추출

 Trigger를 생성해야 함

데이터베이스 성능 저하

Timestamp 방식

 테이블에 Timestamp 컬럼 추가

 Timestamp 컬럼 기준으로 변경 데이터 추출  DB Pooling으로 데이터베이스 성능 저하발생

Log Miner 방식

 Oracle Utility를 이용하여 변경 데이터 추출 데이터 추출의 심각한 성능 저하 유발

Direct Log Access 방식

 데이터베이스 Redo Log 파일 직접 접근

 파일 포맷을 분석하여 직접 변경 데이터 추출

 빠른 추출 방식

 데이터베이스 성능 저하 낮음

Kernel (X-Stream) 방식

 Oracle 차세대 로그 추출 및 적재 방식

 빠른 성능과 안정성을 보장하며, Oracle Database에 대해서는 최적의 기술임

가장 빠른 추출 성능과 안정성 보장

Oracle GoldenGate 만 지원 가능

(7)

Agenda

What is Oracle GoldenGate?

Architecture

Components Installation

Administration

Trouble Shooting

(8)

Architecture

OGG 기본 Architecture는 매우 단순한 구조 입니다.

실시간으로 Source System으로 부터 변경 데이터를 추출하여 데이터를 적재하는 방식으로 추출/전송/적재 모듈의 역할에 맞는 Architecture로 복제 시간과 자원 절약이 가능 합니다.

Route: Target 에 데이터 전송 시 압축과 암호화 (옵션) 처리 Extract (Process): 트랜잭션 로그 파일을 읽어서 Commit 된 데이터를 추출하여 Trail 파일에 저장

Trail files (File): 추출된 변경 데이터가 저장되어 있는 OGG 전용 파일

Replicat (Process): 변경 데이터 적재 Pump (Process): Trail 파일의 데이터를 N개의 Target 으로 전송

Target Database

Pump

소스 Database 타겟 Database

Trail

Files Trail

Files

Oracle GoldenGate Oracle GoldenGate

TCP/IP BI-Directional

Extract

Collector

MGR MGR

Replicat SQL

(9)

Source System에 성능 저하가 거의 없으며, 다양한 종류의 Source/Target System을 지원 합니다.

필요에 따라 유연한 구성이 가능하고 다양한 시스템 중단과 장애 시에도 데이터 정합성을 보장 합니다.

Unidirectional

Query Offloading

Zero-Downtime Migration

Broadcast

Data Distribution Integration/Consolidation Data Warehouse

Peer-to-Peer

Load Balancing Multi-Master

Bi-Directional

Hot Standby or Active-Active for HA

BPM CEP

Data Distribution via Messaging

Architecture

(10)

Agenda

What is Oracle GoldenGate?

Architecture

Components

Installation

Administration

Trouble Shooting

(11)

Components

크게 6가지의 Component로 구성 됩니다.

Data Pump (전송) Extract

(추출)

Replicat (적재)

Trail or Extract Files (Binary)

Checkpoint

Manager

(12)

Components

Manager

Extract, Replicat 프로세스를 제어하는 process 입니다.

하나의 Manager는 다수의 Extract, Replicat을 관장 합니다.

• First Start Process

- OGG Process 중 가장 먼저 실행 되어야 하는 process

• Feature

- OGG 프로세스 기동(Extract, Replicat) - Dynamic Start (자동 시작)

- 프로세스들의 포트 관리 - Trail 관리

- Event, Error, Threshold 리포트 생성

Replicat Extract (적재)

(추출)

Manager

(13)

Components

Extract

OGG의 추출(Capture)을 담당하고 있는 process 입니다.

Source System Database의 Transaction Log를 읽어 Commit 된 데이터를 “Trail” 이라는 OGG 전용 Binary File을 생성하고 기록합니다.

• Extract 구성 방식

- Classic Mode

- Integrated Mode (for ORACLE)

• 하나의 Source Database에 여러 개의 Extract Group을 설정이 가능

Pump

소스 Database 타겟 Database

Trail

Files Trail

Files

Oracle GoldenGate Oracle GoldenGate

TCP/IP BI-Directional

Extract

Collector

MGR MGR

Replicat SQL

(14)

Capture Mode (1)

• Classic Capture

- OGG의 일반적인 Capture 방식

- Redo log와 Archive Log를 읽어 들여 Source Database의 변경 분을 추출 - 복잡한 데이터 타입을 제외한 대부분의 데이터 타입을 지원

- Multitenant Container Database를 제외한 대부분의 Oracle Database는 지원함

- Compatibility 11.0.0.0. 이하에서 UDT, VARRAY, NOLOGGING LOB, TDE, SECUREFILE LOB 등을 지원함

Components

Extract

Oracle

Multitenant Container Database

Data Types

Long Varchar, xml.. compression, HCC, XA

(15)

Capture Mode (2)

• Integrated Capture

- OGG 11.2.1.0.1, Oracle 11.2.0.3 이상에 동작 함 (Patch 13560925가 필요함) - 별도의 Logmining Server에서 LCR 형태로 변경분을 전달 받음

- Classic Capture 보다 더 많은 Data Type을 지원 - 추가 적인 설정 없이 RAC, ASM, TDE를 지원

- Multiple Pluggable Database, Multitenant Container Database를 지원 - 11.2.0.4 이후 부터는 별도의 DDL 복제 Trigger 설정 없이 DDL 복제를 지원

Components

Extract

Oracle

Multitenant Container Database Data Types

Long Varchar, xml.. compression, HCC, XA

(16)

Components

Pump Extract

Extract(추출) Process가 생성한 Trail을 읽어 Target System으로 전송하는 역할을 하는 Process 입니다.

Optional하게 구성되는 Process

- 구성하지 않을 경우, Extract process가 Trail File 추출 + Target System으로 직접 전송하는 작업 추가

- Pump Extract를 구성함으로써 Storage 설정을 더 유연하게 하며 Extract(추출) Process를 TCP/IP 활동으로 부터 분리 시킴.

- OGG에서는 구성하는 것을 권장 함 - Data Filtering, Mapping, Conversion

구성하는 이유

- 네트워크 및 Target System 유실 방지 - 데이터 Filtering, 가공

- 다중 Source System의 데이터를 Target System에 통합 할 경우 - 하나의 Source System 데이터를 다중 Target System에 분산 할 경우

Pump

소스 Database 타겟 Database

Trail

Files Trail

Files

Oracle GoldenGate Oracle GoldenGate

TCP/IP BI-Directional

Extract

Collector

MGR MGR

Replicat SQL

(17)

Components

Replicat Process

Source System으로 부터 전송 받은 Trail을 읽어, Target Database에 DML 또는 DDL을 적용하는 Target System에서 기동 되는 Process 입니다.

• Replicat 구성 방식

- Classic

- Coordinated

- Integrated (for ORACLE) - Parallel

Pump

소스 Database 타겟 Database

Trail

Files Trail

Files

Oracle GoldenGate Oracle GoldenGate

TCP/IP BI-Directional

Extract

Collector

MGR MGR

Replicat SQL

(18)

Replicat Mode (1)

• Classic Replicat

: 전통적인 구성방식으로 Data를 Serial하게 적용 합니다.

1) Source System에서 전달받은 Trail을 읽음 2) Data Filtering, Mapping, Conversion 수행

3) DML과 DDL을 Source Database와 같이 Commit 된 순서대로 SQL문을 생성 4) Oracle Call Interface를 통하여 Target에 SQL 적용

Components

Replicat Process

(19)

Replicat Mode (2)

• Coordinated Replicat

: OGG Version 12.1 이후에 등장한 mode로 multi-threads 기반으로 Data를 Parallel 하게 적용 할 수 있습니다.

1) Source System에서 전달받은 Trail을 읽음 2) Data Filtering, Mapping, Conversion 수행

3) DML과 DDL을 Source Database와 같이 Commit 된 순서대로 SQL문을 생성 4) Oracle Call Interface를 통하여 Target에 SQL 적용

Components

Replicat Process

(20)

Replicat Mode (3.1)

• Integrated Replicat

: Oracle Database 11.2.0.4 이상에서만 사용 될 수 있는 Mode로, ‘Lightweight Streaming API’를 사용하여 XStream에서 변경 분을 처리 합니다.

1) Source System에서 전달받은 Trail을 읽음 2) Data Filtering, Mapping, Conversion 수행

3) Commit 된 순서대로 LCR 형태로 구조화 하고 DDL은 Replicat에서 직접 적용 4) Inbound Server로 전송 된 후 data를 Target Database에 적용 함

Components

Replicat Process

(21)

Replicat Mode (3.2)

• Integrated Replicat

: Integrated 모드에서 지원되지 않는 Datatype 또는 Operation이 요청되면 자동으로 OCI를 사용하여 ‘DIRECT MODE’로 적용 합니다.

• Case in using Direct Mode

1) DDL operation 2) Sequence Operation

3) SQLEXEC parameter within a TABLE or MAP parameter 4) EVENTACTIONS processing

• Requirements

1) Extract parameter ‘LOGALLSUPCOLS’ 설정

2) Database, Schema Level Supplemental Logging 설정 3) Database parameter STREAM_POOL_SIZE 설정

Components

Replicat Process

DML

Direct Mode

DML DDL

Intergrated Mode Intergrated Mode

(22)

Replicat Mode (4)

• Parallel Replicat

: OGG 12cR3에서 처음 소개 된 기능으로 Integrated의 parallel한 적재방식의 장점과 종속성 계산, 병렬 처리 등을 Database 엔진을 사용하지 않고 외부에서 처리함으로써 Database에 추가적인 부담을 주지 않고 Parallel한 Data 적재 방식을 제공 합니다.

1) Trail File을 Mapper가 Read하여 Record를 매핑 2) Mapper는 record를 Master에게 전달

3) Master가 데이터를 수신하면 트랜잭션을 단일 Stream으로 정렬하고 스케쥴링하여 Applier에게 전달 4) Applier는 Target Database에 데이터를 적재

Components

Replicat Process

(23)

Components

Trail or Extract files

Source System Database의 변경사항을 지속적으로 복제하기 위하여 변경 된 데이터를 디스크에 File 형태로 임시로 저장합니다.

• Trail File

- EXTTRAIL : 추출 전용 Extract - RMTTRAIL : Pump Extract

• Creation and Maintenance

- 기본적으로 Oracle GoldenGate 설치경로의 Sub directory 인 ‘dirdat’ 경로에 저장 됨

- ‘ADD EXTTRAIL’(Extract), ‘ADD RMTTRAIL(Pump Extract)’ Command에 의해서 알파벳 2글자로 명명하여 Trail을 생성 - ‘GLOBALS’ Parameter file을 통해 6자리 또는 9자리로 시퀀스 넘버를 설정이 가능함.

- Sequence Number가 999999999 까지 도달하면 다시 000000000 부터 덮어쓰기 시작

- Manager Parameter ‘PURGEOLDEXTRSACTS’ 를 이용하여 주기적으로 Trail을 삭제 할 수 있음

Pump

소스 Database 타겟 Database

TRAIL EXT RMT

TRAIL

Oracle GoldenGate Oracle GoldenGate

Extract

Collector

Replicat

MGR

(24)

Components

Checkpoints

유사시 복구를 위해 Process의 현재 Read, Write 위치를 기록 합니다.

Extract에 의해 어디까지 Capture 됐는지, Replicat에 의해 어디까지 적용 됐는지 기록 합니다.

Commit Ordered So urce Trail

Commit Ordered Ta rget Trail Source Database

Target Database Begin, TX 1

Insert, TX 1 Begin, TX 2

Update, TX 1 Update, TX 2

Commit, TX 2 Begin, TX 3

Update, TX 3

Begin, TX 4 Commit, TX 3

Delete, TX 4

Begin, TX 2 Update, TX 2 Commit, TX 2 Begin, TX 3 Update, TX 3 Commit, TX 3

Begin, TX 2 Update, TX 2 Commit, TX 2 Start of Oldest Open (Uncommitted) Transaction

Current Read Position

Capture Checkpoint

Current Write Position

Current Read Position

Pump Checkpoint

Current Write Position

Current Read Position

Apply Checkpoint

Trail Files

Trail Files Pump

Capture Apply - Lock

- Performance

- Transaction

- Data Integrity

- BR

(25)

Oracle GoldenGate

참조

관련 문서

PuzzleData ProDiscovery TM | Global Process Mining Platform 업무 시스템의 이벤트 로그 데이터를 분석하여 실제 프로세스를 도출하고,. 프로세스 개선을

Course Objective.. Provide an environment that will provide the greatest opportunity to accomplish the objective.?. 2. Many companies place a high

증가경향 모델의 input data 와 target data에 사용된 학생들의 성적은 표준점수로 변환한 이후에 input data에 사용된 것보다 target data에 사용된 것이 높은

데이터 전송 및 함수 로딩 요청 메시지 타입인 MAPI_FREQ 와 데이터 전송 및 함수 로딩 요청 메시지의 응답 타입인 MAPI_FACK 의 경우만 메시지 패 킹과

임의로 생성된 스마트카 상태 데이터를 주축으로 빅데이 터의 수집, 적재, 탐색, 분석 과정에서 사용되는 프로그램들의 역할과 기능을 설명하고, 하둡을

– If the test is corrupted by noise, the frequency response may be modified significantly by noise. – The disturbance affects both the gain and phase over

The vapors of light alcohols are distilled in second column to ethanol and mixture of

(i) A nonmagnetic inclusion or planar defect coincident with a wall : The need for a moment rotation (or a twist in M) across the defects is eliminated and thus the total