데이터스트림
Oracle GoldenGate Data Streams는 Oracle GoldenGate 추적에서 커밋된 변경 레코드를 지속적으로 게시하는 WebSocket 엔드포인트를 제공합니다. 클라이언트는 이름이 지정된 데이터 스트림 리소스를 생성 또는 사용하고, 생성된 끝점에 연결하고, JSON 레코드를 수신하고, 각 레코드를 처리하고, 복구를 위해 마지막으로 성공적으로 처리된 위치를 저장합니다.
데이터 스트림은 AsyncAPI 3.0 문서를 사용하여 엔드포인트, 채널, 쿼리 매개변수, 메시지 구성 및 레코드 스키마를 설명합니다. 특정 스트림에 대해 생성된 AsyncAPI YAML은 해당 스트림에 대한 신뢰할 수 있는 계약입니다. 다른 배치에서 일반 호스트 이름, 채널 경로 또는 페이로드 정의를 복사하는 대신 사용합니다.
개발자 및 데이터 과학자를 위한 이점
-
향상된 데이터 수집: AsyncAPI 기반의 게시 또는 가입 모델을 통해 애플리케이션이 실시간 데이터 업데이트를 효율적으로 수신할 수 있습니다.
-
유연한 데이터 형식 지정: 기존 툴과의 원활한 통합을 위해 선호하는 형식을 선택할 수 있습니다.
-
간소화된 통합: AsyncAPI은 개발자 및 데이터 과학자가 일반적으로 사용하는 다양한 애플리케이션 및 도구와의 원활한 상호 작용을 촉진합니다.
-
보장된 데이터 무결성: Oracle GoldenGate의 핵심 강점을 상속하는 Data Streams는 소스 데이터베이스에서 커밋된 변경 사항을 복제하여 데이터 내구성을 보장합니다.
주: 데이터 스트림 기능은 Oracle GoldenGate for Distributed Applications and Analytics 또는 Oracle GoldenGate for Big Data 대상을 통해 라이센스가 부여됩니다. 자세한 내용은 Oracle GoldenGate Licensing Guide의 Oracle GoldenGate for Distributed Applications and Analytics를 참조하십시오.
런타임 시퀀스
-
Extract는 커밋된 소스 변경사항을 캡처하여 로컬 또는 원격 Oracle GoldenGate 트레일에 씁니다.
-
관리자는 소스 추적과 선택적 필터링 및 JSON 출력 설정을 식별하는 데이터 스트림 리소스를 생성합니다.
-
이 서비스는 데이터 스트림에 대한 AsyncAPI YAML 문서를 생성합니다.
-
클라이언트는 WebSocket 연결을 설정하고
begin=now,begin=earliest, ISO 8601 시간 기록 또는 저장된pos값을 제공합니다. -
이 서비스는 JSON 메시지를 지속적으로 푸시합니다. 프로토콜은 클라이언트의 레코드별 확인을 기다리지 않습니다.
-
클라이언트는 레코드를 처리하며 마지막으로 성공적으로 처리된 DML 또는 DDL 레코드의
pos를 영구적으로 저장합니다.
서비스가 보내는 것
-
스트림의 레코드를 설명하는 JSON 스키마 레코드입니다.
-
생산자, 소스 데이터베이스, 호스트 및 소스 추적 정보를 식별하는 스트림 메타데이터 레코드입니다.
-
테이블 열, JSON 기본 데이터 유형, 널 가능성 및 키 멤버쉽을 설명하는 객체 메타데이터 레코드입니다.
-
INSERT,UPDATE및DELETE에 대한 DML 레코드입니다. -
영향을 받는 객체를 식별하고 DDL 문을 포함하는 DDL 레코드입니다.
-
data멤버가 GoldenGate 레코드를 포함하는 선택적 CloudEvents JSON 봉투입니다.