TIL - DB Migration Methods

DW 제안서 작업하면서 알게 된 마이그레이션 관련 용어들 정리.


📚 배경

DW 시스템 마이그레이션 제안서 논의 중 나온 용어들:

  • CDC
  • OGG (Oracle GoldenGate)
  • TTS (Transportable Tablespace)
  • Big Bang vs Agile Migration

🔄 마이그레이션 방식

Big Bang Migration

한 번에 전체 전환하는 방식.

D-Day:  기존 시스템 중단 → 데이터 이관 → 신규 시스템 오픈
        └─────────── 다운타임 (몇 시간~며칠) ───────────┘
장점단점
깔끔함 (한 번에 끝)리스크 큼
병행 운영 부담 없음긴 다운타임
롤백 어려움

Phased / Agile Migration

단계적으로 전환하는 방식.

Phase 1: 일부 이관 → 검증
Phase 2: 추가 이관 → 검증
...
Phase N: 최종 전환
장점단점
리스크 분산병행 운영 복잡
롤백 쉬움기간 길어질 수 있음
다운타임 최소화CDC 같은 동기화 기술 필요

언제 뭘 쓰나

상황권장 방식
소규모, 단순한 시스템Big Bang
대규모, 미션크리티컬Phased + CDC
24/7 운영 필수Phased + CDC

📡 CDC (Change Data Capture)

변경된 데이터만 캡처해서 전달하는 기술.

왜 필요한가

기존 방식 (Full Load):
운영 DB ─── 매일 밤 전체 복사 ───▶ DW
            (느림, 부하 큼)

CDC 방식:
운영 DB ─── 변경분만 실시간 ───▶ DW
            (빠름, 부하 적음)

CDC 방식

방식설명
Log-basedDB 트랜잭션 로그 읽기 (성능 좋음)
Trigger-basedDB 트리거로 감지 (DB 부하 있음)
Timestamp-based수정일시 컬럼 비교 (DELETE 못 잡음)

주요 CDC 솔루션

솔루션특징
Oracle GoldenGate (OGG)상용, Oracle 특화
SharePlexQuest, Oracle 복제
Debezium오픈소스, Kafka 연동
AWS DMS클라우드, 마이그레이션용

🔶 OGG (Oracle GoldenGate)

Oracle의 실시간 데이터 복제/CDC 솔루션.

Source DB ──── OGG ────▶ Target DB
           (실시간 복제)
항목설명
용도DB 간 실시간 복제, CDC
방식트랜잭션 로그 기반 (Log-based)
특징Oracle 특화, 이기종 DB도 지원
사용처DW 동기화, DR 구성, 마이그레이션

📦 TTS (Transportable Tablespace)

Oracle의 대용량 데이터 이관 기능.

테이블스페이스 단위로 데이터 파일을 통째로 복사.

Source DB                          Target DB
    │                                  │
    ├── datafile.dbf ─── 복사 ────▶   ├── datafile.dbf
    └── metadata export ──────────▶   └── metadata import
항목설명
용도대용량 데이터 빠른 이관
장점일반 export/import보다 훨씬 빠름
사용처DW 초기 데이터 이관

🔗 TTS + OGG 조합

Agile Migration에서 자주 쓰는 조합.

┌─────────────────────────────────────────────────────────┐
│ Phase 1: TTS로 초기 데이터 이관                         │
│          (대용량 데이터 빠르게 복사)                    │
└─────────────────────────────────────────────────────────┘
                          │
                          ▼
┌─────────────────────────────────────────────────────────┐
│ Phase 2: OGG로 변경분 실시간 동기화                     │
│          (CDC로 기존/신규 시스템 동기화 유지)           │
└─────────────────────────────────────────────────────────┘
                          │
                          ▼
┌─────────────────────────────────────────────────────────┐
│ Phase 3: 검증 후 전환                                   │
│          (문제 없으면 신규 시스템으로 전환)             │
└─────────────────────────────────────────────────────────┘
단계기술역할
초기 이관TTS대용량 빠르게 복사
동기화OGG변경분 실시간 반영
전환-검증 후 cutover

💡 정리

  • Big Bang: 한 번에 전환, 리스크 큼
  • Agile/Phased: 단계적 전환, CDC 필요
  • CDC: 변경 데이터만 캡처, 실시간 동기화
  • OGG: Oracle CDC 솔루션
  • TTS: 대용량 초기 이관용
  • TTS + OGG: 초기 이관 + 실시간 동기화 조합

🔗 관련 문서