string(27) "/blog/?uid=188&mod=document"

HOME

ABOUT US

Blog

Blog

Blog

[Ark for CDC] 로그마이너

2021.07.20

 

Logminer

Logminer는 Oracle 8i 이상에서 사용 가능한 Tool로써, Oracle에 기본 내장되어 있으며, Redo log와 Archived log file의 내용을 분석하여 DML/DDL 이력을 확인할 수 있다.

Logminer로 Redo 와 Archived log file을 분석하게 되면 해당 Log file에 기록된 모든 DML 및 DDL(9i 이상) 문을 확인할 수 있어 특정

트랜잭션의 발생 시점 및 실행 유저를 확인할 수 있고, UNDO SQL을 추출해서 해당 쿼리를 Rollback 할 수도 있다.

구체적으로는 아래와 같다.

20210720151110_ky6ncdt.jpg

관련 View 및 Package

20210720151122_7zqta2w.jpg

유용한 옵션들

20210720151130_l6qjnwb.jpg

제약 사항

 

Oracle 8i 이상에서만 지원

● 분석하는 Instance와 같은 H/W Platform에서 동작하는 같은 Character set을 사용하는 Redo log file이어야 함● PL/SQL Package에 의해 생성된 dictionary의 도움을 통해서만 Redo log file의 내용을 분석 가능.

이 Dictionary는 Logminer가 내부적인 OID와 Data type을 Object 이름과 외부 Data format으로 변경하도록 함 ● 미지원 Data type & Table storage attributes (Oracle 12.2 기준)

· BFILE

· Nested tables

· Objects with nested tables

· Tables with identity columns

· Temporal validity columns

· PKREF columns

· PKOID columns

· Nested table attributes and stand-alone nested table columns

Logminer기반 CDC 솔루션의 제약

Logminer는 Oracle DB에 내장된 Tool로써 Oracle DB 업그레이드 전략에 밀접한 영향을 받게 되며,

이는 곧 Logminer를 기반으로 한 CDC 솔루션에도 큰 영향을 미치게 된다.

중요한 예로써, Logminer 운영에서 매우 유용한 옵션인 ‘CONTINUOUS_MINE’이 Oracle 12.2에서 deprecated 되었으며, Oracle 19.1부터는 desupported 된 상태이다.

이로 인해 해당 옵션을 대체하기 위해서는

- 분석하고자 하는 log file을 수동으로 dbms_logmnr.add_logfile을 사용하여 추가해야 함

- CDC 솔루션 내부적으로 Special update를 통해 기존 코드 삭제하고, 명시적으로 분석하고자 하는 log file을 지정해야 함

등이 수행되어야 한다.

향후에도 logminer에 변경이 발생할 경우 이에 대한 대응 처리가 지속적으로 요구되어 매우 종속적인 상태가 되며,

이는 CDC를 운영하는 고객사 입장에서 리스크가 될 수 있다.

20210720151145_gool41z.jpg



자체 엔진 기반 Ark for CDC

아크데이타의 Ark for CDC는 벤더사가 제공하는 LogMiner가 아닌 자체 엔진을 사용하여 Oracle DB의 Redo Log로부터 오직 변경된 데이터만을 빠르게 동기화한다.

또 모듈화된 아키텍처로 설계되어 있어 운영 시스템 부하 최소화 및 데이터 복제 시 완벽한 데이터 정합성을 보장하고동시에 데이터 복제 환경 구성의 유연성을 제공하는 업계 최고의 CDC 솔루션이다.

20210720151159_2dv2e1v.jpg