이 페이지에서는 JMS(Java Message Service) 정보를 가져오거나 JMS 메시지 또는 파일로 정보를 전달하기 위해 Oracle GoldenGate 인스턴스와 통합되는 Oracle GoldenGate 어댑터에 대해 간략히 설명합니다.
이 장에서는 다음 섹션으로 구성됩니다:
- Oracle GoldenGate Application Adapters Overview
- Introducing the File Writer
- Introducing the Java Adapter
- Oracle GoldenGate Java Delivery
Oracle GoldenGate Application Adapters Overview
이 섹션에서는 Oracle GoldenGate Application Adapter에 대한 개요를 설명합니다.
Oracle GoldenGate Integration
Oracle GoldenGate 애플리케이션 어댑터는 Core Oracle GoldenGate 인스턴스와 통합됩니다. Core Oracle GoldenGate 제품:
- 원본 데이터베이스에서 트랜잭션 변경사항 캡처
- 이러한 변경 사항을 Oracle GoldenGate 추적(trail)이라고 하는 데이터베이스 독립 파일 집합으로 보내고 Queue에 넣습니다
- mapping 매개 변수 및 함수를 사용하여 원본 데이터를 선택적으로 변경합니다
- trail의 트랜잭션을 대상 시스템 데이터베이스에 적용합니다
Oracle GoldenGate는 이러한 캡처를 수행하여 이기종 데이터베이스, 플랫폼 및 운영 체제 전반에 걸쳐 거의 실시간으로 복제합니다.
Oracle GoldenGate Application Adapter Integration Options
오라클 GoldenGate Application Adapter는 오라클 GoldenGate 핵심(Core) 제품의 설치와 통합되어 다음 중 하나를 수행합니다:
- JMS 메시지 읽기(Read) 및 Oracle GoldenGate trail로 메세지 전달
- Oracle GoldenGate trail을 읽고 JMS provider 또는 다른 메시징 시스템 또는 사용자 지정 응용 프로그램에게 트랜잭션 전달
- Oracle GoldenGate trail을 읽고 및 다른 application에서 읽을 수 있는 파일에 트랜잭션을 기록
Capturing Transactions to a Trail
Oracle GoldenGate 메시지 캡처를 사용하여 큐(Queue)에서 메시지를 읽고 Oracle GoldenGate Extract 프로세스와 통신하여 처리된 데이터가 포함된 trail을 생성할 수 있습니다.
메시지 캡처 처리는 generic Extract process에 대한 Vendor Access Module (VAM) plug-in 으로 구현됩니다. 속성, 규칙 및 외부 파일 집합은 메시징 연결 정보를 제공하고 메시지가 대상 GoldenGate 추적의 레코드에 구문 분석 및 매핑되는 방법을 정의합니다.
속성 설정, 규칙 및 외부 파일이 메시징 연결 정보를 제공하고 target GoldenGate trail에 매핑되는 방법을 정의합니다.
현재 이 adapter는 JMS text messages로 부터 캡쳐(capture)를 지원합니다.
Applying Transactions from a Trail
Oracle GoldenGate delivery를 사용하여 ETL 도구(예: DataStage, Ab Initio, Informatica), JMS 메시징 또는 사용자 지정 API 등 관계형 데이터베이스 이외의 대상에 트랜잭션 변경 사항을 적용할 수 있습니다.
Oracle GoldenGate와의 통합(integration)을 위한 다양한 옵션이 있습니다:
- 단순 파일 통합: 주로 ETL, 독점 또는 레거시 애플리케이션의 경우 Oracle GoldenGate 파일 작성기는 배치 파일 입력을 예상하는 툴이 사용할 마이크로 배치 파일을 Disk에 쓸 수 있습니다. 데이터는 구분 기호로 구분된 값, 길이로 구분된 값 또는 이진수와 같은 대상 응용 프로그램의 규격에 따라 형식을 지정할 수 있습니다. 이러한 시스템에 대한 거의 실시간 피드는 배치 파일 롤오버(다음 배치로 넘어가는 시간) 시간을 분 또는 초 단위로 줄임으로써 수행됩니다.
- 메시징: 트랜잭션 또는 작업을 XML 등의 메시지로 JMS에 게시할 수 있습니다. JMS provider는 다양하게 (예를 들어 ActiveMQ, JBoss Messaging, TIBCO, WebLogic JMS, WebSphere MQ 등) 구성 가능합니다. .
- Java API: Source 시스템에서 Oracle GoldenGate에 의해 캡처된 트랜잭션, 작업 및 메타데이터 변경을 처리하기 위해 사용자 지정 이벤트 핸들러를 Java로 작성할 수 있습니다. 이러한 사용자 지정 Java 처리기는 대상 시스템(target system)에 사용할 수 있는 다양한 Java API에 이러한 변경 사항을 적용할 수 있습니다.
세 가지 옵션 모두 Oracle GoldenGate의 사용자 exit 인터페이스인 C API를 사용해 core Oracle GoldenGate 제품의 확장으로 구현됐다.
- 단순 파일 통합을 위해 Oracle GoldenGate File Writer는 Oracle GoldenGate Extract 프로세스에 동적으로 연결(link)되는 사용자 exit 라이브러리를 제공합니다. 구성은 속성 파일을 사용하여 수행되며 프로그래밍이 필요하지 않습니다.
- JMS 또는 Java API를 사용한 Java 통합의 경우 Oracle GoldenGate for Java를 사용하십시오.
Introducing the File Writer
이 장은 플랫 파일에 대한 오라클 골든게이트 어댑터 개요를 설명합니다.
이 어댑터는 Oracle 골든게이트 추출 프로세스(extract process)를 동적으로 연결(link)된 사용자 exit 라이브러리를 제공합니다. 라이브러리는 .ddl 또는 .so 형식으로 표시될 수 있습니다. 속성 파일을 사용하여 프로그래밍이 필요하지 않습니다.
Oracle GoldenGate Adapter for Flat Files은 현재 Oracle 골든게이트 추출 프로세스(Extract process)와만 동작합니다. Replicat 프로세스와는 동작하지 않습니다.
Oracle GoldenGate Adapter for Flat Files은 현재 Oracle 골든게이트 추출 프로세스(Extract process)와만 동작합니다. Replicat 프로세스와는 동작하지 않습니다.
이 구성에서 원본 데이터베이스의 트랜잭션은 기본 추출 프로세스(primary extract process)에 의해 캡처되고 Oracle GoldenGate 추적(trail)에 기록됩니다. 데이터 펌프 추출(data pump extract)은 이 추적(trail)을 Oracle GoldenGate 어댑터 추출로 보내고, 연결된 사용자 종료 프로세스는 타사 애플리케이션에 맞게 형식이 지정된 플랫 파일에 데이터를 씁니다.
Introducing the Java Adapter
이 장에서는 Java 용 Oracle GoldenGate 어댑터에 대해 설명합니다. Java 용 Oracle GoldenGate 어댑터는
- Oracle GoldenGate 추적(trail) 데이터로 처리하기 위해 보낼 JMS (Java Message Service) 메시지의 캡처
- Oracle GoldenGate가 캡처 한 트랜잭션 데이터의 처리를 JMS 메시지로 전달
을 수행합니다.
Oracle GoldenGate 메시지 캡처는 JMS 메시징에 연결하여 메시지를 구문 분석하고 VAM 인터페이스를 통해 Oracle GoldenGate Extract에 전송하여 메시지 데이터의 Oracle GoldenGate 추적을 구축합니다. 이렇게 하면 JMS 메시지를 대상 데이터베이스에 대해 실행 중인 Oracle GoldenGate 시스템으로 전달할 수 있습니다.
Oracle GoldenGate JMS 메시지 캡처를 사용하려면 다음 두 가지 구성 요소가 필요합니다.
Oracle GoldenGate 추출 프로세스에 연결된 동적으로 연결(link)된 공유 VAM 라이브러리입니다.
별도의 유틸리티인 Gendef는 메시지 캡처 특성 파일 및 구문 분석기 특정 데이터 정의를 사용하여 Oracle GoldenGate 소스 정의 파일을 작성합니다.
다음 다이어그램은 JMS 메시지를 캡처하기 위한 일반적인 구성을 보여줍니다.
이 구성에서 JMS 메시지는 Oracle GoldenGate 어댑터 JMS 처리기에 의해 선택되고 어댑터의 메시지 캡처 VAM을 사용하여 추출 프로세스로 전송됩니다. 추출은 데이터 펌프 추출에 의해 네트워크를 통해 Oracle GoldenGate 대상 인스턴스로 전송되는 추적에 데이터를 씁니다. 그런 다음 대상 복제는 추적을 사용하여 대상 데이터베이스를 업데이트합니다.
Oracle GoldenGate Java Delivery
Oracle GoldenGate Java API를 통해 Oracle GoldenGate에서 캡처한 트랜잭션 데이터는 JMS(Java Message Service), 디스크에 기록된 파일, 빅 데이터 애플리케이션으로의 스트리밍 데이터 또는 사용자 정의 애플리케이션 Java API와의 통합과 같은 관계형 데이터베이스 이외의 대상으로 전달될 수 있습니다.
Oracle GoldenGate Java Delivery는 추출 또는 복제 프로세스와 함께 작동할 수 있습니다. Oracle GoldenGate Replicat 프로세스를 사용하는 것이 가장 좋은 방법입니다. Oracle GoldenGate Java Delivery에는 Java 7이 필요합니다.
Oracle GoldenGate for Java는 Oracle GoldenGate Replicat 프로세스에서 Java 코드를 실행할 수 있는 기능을 제공합니다. Oracle GoldenGate for Java를 사용하려면 다음 조건을 충족해야 합니다.
- 오라클 GoldenGate 복제 프로세스의 확장 모듈과 통합할 수 있는 C / C ++로 구현된 dynamically linked 또는 shared library.
- Oracle GoldenGate Java API를 구성하는 Java 라이브러리 (JAR) 집합입니다. 이 Java 프레임워크는 JNI(Java Native Interface)를 통해 복제와 통신합니다.
- Java 7은 Oracle GoldenGate Java Delivery 프로세스 또는 프로세스를 호스팅하는 시스템에 설치되어 있고 액세스 할 수 있어야합니다. 환경 변수는 Java 및 연관된 라이브러리를 해석하기 위해 올바르게 설정되어야 합니다.
Oracle GoldenGate Adapter로 다양한 DBMS 뿐 아니라 JMS, Hadoop, HIVE, Kafka등과 연결할 수 있다는 것을 알 수 있었습니다.
이것들은 모두 사용자 라이브러리와 연결하여 상용할 수 있도록 되어있습니다.
이번 글에서는 Oracle GoldenGate 어댑터에 대해서 간략하게 알아봤습니다.
긴 글 읽어주셔서 감사합니다.