본문 바로가기

데이터 사이언스 DataScience/Data Base 데이터베이스

[Oracle] OGG란? CDC솔루션 쓰는 이유

반응형

1. CDC 솔루션의 필요성

- CDC란? Change Data Capture. 

   변경되는 데이터를 실시간으로 다른 데이터베이스에 동기화 시켜주는 기술을 의미한다.

예를 들어 A 서버에 있는 테이블의 데이터가 변경되면, 실시간으로 B 서버에 있는 테이블의 동일한 데이터도 실시간으로 변경 시켜준다. 

 

1) 정보계에서의 필요성

금융권에서 정보계는 필수적인 존재다.

Core한 금융 업무를 처리하는 계정/기간계는 금전과 직결되기때문에

서버 부하, 원장 보호 등을 위해 직접적으로 접근하기 어렵다.

 

하지만, 리스크 관리, 마케팅 전략 수립, 수익모델 발굴 등 실제 돈을 버는 영업활동을 위해서는

영업활동으로 축적된 데이터를 대규모로 분석해야한다. 

 

EDW (Enterprise Data Warehouse) 라고도 불리는 정보계는

과거에는 ETL(Extraction, Transform, Load) 등 배치(Batch) 형태로 데이터를 적재했지만, 

시간이 흐름에 따라 보다 실시간으로 데이터를 동기화해서 분석하기위해 CDC 기술을 필요로하게 됐다.

 

 

2) MSA 아키텍처에서의 필요성

디지털 전환(Digital Transformation), 클라우드 전환, MSA 전환은 최근 IT 업계에 빼놓을 수 없는 키워드이다. 

체감되게는 미국 5대 빅테크 업체가 2021년 S&P500 지수의 절반을 끌어올린 원동력이 되었다. 

 

Monolithic한 구조를 주로 사용하던 금융IT를 비롯한 많은 분야에서 MSA로의 전환은 이미 시작됐다.

참고 : https://subbak2.tistory.com/46

 

금융IT와 MSA - 1. 왜 필요한가?

0. 카카오는 빠른데, 내가 쓰는 은행은 왜이렇게 느려? 여러 은행 어플을 사용 중이라면 한 번쯤 생각해봤을 내용이다. 카카오나 토스로는 금방 되는게 은행어플에서는 오래 걸린다. 그럼 카카오

subbak2.tistory.com

 

MSA 아키텍처로 구성할 경우 DB 입장에서는 비효율 적일 수 있다. 

통합된 시스템에서의 트랜잭션(좌)과 MSA 시스템에서의 트랜잭션(우)

동일한 로직에서 DB의 분리로 트랜잭션이 더 많이 생길 수 있고,

원장 등 중요 데이터의 경우 SELECT 만 필요한데 테이블을 구성해야하는 경우가 생길 수 있다.

 

이런 경우에 기준이 되는 원장이 데이터가 변경되었을때, API 호출을 통한 트랜잭션을 통해 복제원장을 수정하는 것 보다, CDC를 통해 특정 테이블만 동기화하는게 유리하다.

 

비슷한 맥락으로 Open API가 점점 확대되고 있는 상황에서 

Core 시스템의 부하를 줄이기 위해 CDC를 필요로 하기도 한다.

 

 

2. OGG란?

Oracle GoldenGate라는 이름의 Oracle에서 만든 CDC 솔루션이다.

Oracle DBMS를 사용하는 경우 더 쉽게 OGG로 연동해서 CDC 환경을 구축할 수 있다.

 

AWS와 같은 클라우드 컴퓨팅 서버를 이용할때도 OGG가 설치되어있는 서버를 바로 이용할 수 있다.

https://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/Appendix.OracleGoldenGate.html 

 

 

* 참고 : CDC 대상 테이블 선별 기준

https://subbak2.tistory.com/115

 

[Oracle] CDC 대상 테이블 선별 기준

CDC (Change Data Capture)는 데이터 실시간 동기화로 비즈니스 문제 해결의 도움을 주지만 모든 경우에 사용할 수 있는 것은 아니다. * 참고 : CDC를 쓰는 이유 : https://subbak2.tistory.com/93 [Oracle] OGG란..

subbak2.tistory.com

 

 

* 참고자료 : 

https://docs.oracle.com/goldengate/c1221/gg-winux/GWUAD/introduction-oracle-goldengate.htm#GWUAD117

https://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/Appendix.OracleGoldenGate.html

https://www.kdata.or.kr/info/info_04_view.html?field=&keyword=&type=techreport&page=3&dbnum=189554&mode=detail&type=techreport 

 

반응형