Immersion In Data

SharePlex

[SharePlex] SharePlex Migration

sungjunminn 2023. 12. 7. 13:22

순서

1. SharePlex 소개

2. Migration 절차

 

 

1. SharePlex 소개

1-1. SharePlex

SharePlex : 데이터베이스의 Redo log를 읽어 변경사항(Change Data)을 추출(Capture)해 다른 데이터베이스에 SQL로 복원하여 실시간 복제하는 CDC(Change Data Capture) 솔루션

 

1-2. 용도

Migration : 데이터베이스 변경 또는 업그레이드로 인한 기존 데이터베이스에서 새로운 데이터베이스로 데이터 이관

DR : 운영중인 데이터베이스에 대한 재해복구용 데이터베이스 구축

Load balancing : 운영계/정보계/분석계 등으로 데이터베이스의 부하를 분산

 

1-3. 아키텍처

SP_COP 이라는 메인 프로세스로부터 통제되는 서브 프로세스(CAPTURE, READ, EXPORT, IMPORT, POST)로 구성된다. 소스 데이터베이스에서 Capture Queue에 가져오는 CAPTURE 프로세스, Capture Queue에서 데이터를 읽어들여 Export Queue로 보내주는 READ 프로세스, Export Queue의 데이터를 TCP 통신으로 보내주는 EXPORT 프로세스는 소스 데이터베이스 서버에서 구동된다. 타겟 데이터베이스 서버에서는 TCP통신으로 데이터를 받아 Post Queue에 보내주는 IMPORT 프로세스와 최종적으로 타겟 데이터베이스(Cloud 또는 On-premise)로 데이터를 보내주는 POST 프로세스로 구성되어 있다. 

 

 

2. Migration 절차

2-1. Concept

일반적인 Migration 절차

  • Service 중지
  • Source Database Export
  • Target Database Import
  • Data 검증
  • Service 이전

→ Service를 중지한 후 이전하기까지 큰 다운타임이 있음

 

SharePlex Migration 절차

  • SharePlex 변경 데이터 추출 시작
  • Source Database Export
  • Target Database Import
  • SharePlex 데이터 적용
  • Data 검증
  • Service 중지
  • Service 이전

Service를 중지한 후 이전하기까지 다운타임 최소화

 

Migration 작업 순서

  1. 변경 데이터 추출 시작(복제 시작)
  2. Source Backup(Export)
  3. Target Backup 적용(Import)
  4. 변경 데이터 적용
  5. Service 중지
  6. Service 이전

 

2-2. 변경 데이터 추출 시작 : Config file 작성

 

Config file 작성(복제 대상 선정)

  • Activate 시 복제 대상이 될 Object 작성
  • Schema 나 Table 단위 복제 가능
  • 사전 협의하여 복제 대상 선정

 

2-2. 변경 데이터 추출 시작 : Post 중지

Post 중지 : Target DB 초기 적재 전 데이터 반영을 막기 위해 추출(Activate) 전 Post 프로세스 중지 

 

2-2. 변경 데이터 추출 시작 : Activate

Activate(복제 시작 : 변경 데이터 추출)

  • Config file에 정의된 복제 대상의 변경 데이터를 추출
  • OS에 Queue file이 적재됨

 

2-2. 변경 데이터 추출 시작 :  SCN 채번

 SCN 채번 / Archive Sequence 확인 : SCN 혹은 Archive Sequence number를 기준으로 초기 적재를 수행하기 위함(데이터의 유실 또는 중복 없이 데이터 적용 목적)

 

2-3. 초기 적재

초기 적재

  • SCN 기반 Datapump 또는 Full Backup Restore & Archive Sequence number 기반 Recovery로 초기 적재를 진행
  • Datapump시 flashback scn 옵션 사용

 

2-4. 변경 데이터 적용 : Reconcile

Post 큐의 중복 데이터 제거(Reconcile) : 데이터 적용 전 초기 적재 된 SCN 또는 Archive sequence 직전까지의 데이터를 적재된 큐 안에서 사전 제거하여 중복을 방지함

 

2-4. 변경 데이터 적용 : Target 변경 요소 비활성화

Fk, Trigger, JOB 비활성화 : Post 실행(데이터 적용) 전 Target에서 이미 적용된 작업의 중복 발생을 방지하기 위해 Target 변경 요소를 비활성화 해주어야 함

 

2-4. 변경 데이터 적용 : Post 실행

Post process 실행

  • 중복데이터 제거(Reconcile)
  • Target 변경 요소 비활성화(Disable Fk, Trigger, JOB) 후 변경 데이터 적용(Start Post)

 

2-5. Service 중지 / 이전

Service 중지 및 이전 : 중지 후 트랜잭션이 더 이상 들어오지 않고, 모든 큐가 다 적용되었는지 확인 후 이전

 

 

'SharePlex' 카테고리의 다른 글

[SharePlex] Parameter 정리  (0) 2024.05.02
[SharePlex] ORA-650, ORA-01031  (0) 2024.05.02
[SharePlex] Datapump를 활용한 초기적재  (1) 2024.02.27
[SharePlex] EDB16 to EDB16  (1) 2024.01.10
[SharePlex] Oracle19c to Oracle19c  (1) 2023.12.08