Autonomous Transaction Processing에서 Apache Kafka로 데이터 복제

Autonomous Transaction Processing의 데이터를 Apache Kafka로 복제하도록 OCI GoldenGate를 구성하는 방법을 알아봅니다.

개요

OCI GoldenGate를 사용하면 Autonomous Database의 데이터를 Apache Kafka와 같은 Big Data 타겟으로 복제할 수 있습니다. 이 빠른 시작은 OCI GoldenGate 배포, 소스 및 대상 연결, 복제 프로세스를 설정하는 방법을 보여줍니다.

시작하기 전에

이 빠른 시작을 성공적으로 완료하려면 다음이 있어야 합니다.

  • 포트가 9092인 VCN(또는 부트스트랩 서버에 사용되는 다른 포트)이 수신 규칙에서 열립니다.
  • 소스 Autonomous Transaction Processing 인스턴스
  • 대상 Apache Kafka 노드

환경 설정: Autonomous Transaction Processing

복제를 위해 소스 데이터베이스가 아직 설정되지 않은 경우 다음 단계에 따라 이 빠른 시작에 사용할 샘플 스키마를 로드할 수 있습니다. 이 빠른 시작은 소스 데이터베이스에 대해 Autonomous Transaction Processing을 사용합니다.

소스 Autonomous Database를 설정하려면 다음과 같이 하십시오.

  1. 샘플 데이터베이스 스키마를 다운로드하고 압축을 풉니다.
  2. In the Oracle Cloud console, select your Autonomous Transaction Processing (ATP) instance from the Autonomous Databases page to view its details and access Database Actions.
  3. GGADMIN 사용자 잠금을 해제합니다.
    1. 데이터베이스 작업, 데이터베이스 사용자 순으로 누릅니다.
    2. GGADMIN을 찾은 다음 줄임표 메뉴(점 3개)를 누르고 편집을 선택합니다.
    3. [사용자 편집] 패널에서 GGADMIN 비밀번호를 입력하고 비밀번호를 확인한 다음 계정이 잠김을 선택 해제합니다.
    4. 변경사항 적용을 누릅니다.
  4. 소스 샘플 스키마 및 데이터를 로드합니다.
    1. 데이터베이스 작업 메뉴의 개발 아래에서 SQL을 선택합니다.
    2. OCIGGLL_OCIGGS_SETUP_USERS_ATP.sql에서 스크립트를 복사하여 SQL Worksheet에 붙여 넣습니다.
    3. 스크립트 실행을 누릅니다. Script Output 탭에 확인 메시지가 표시됩니다.
    4. SQL Worksheet를 지운 다음 OCIGGLL_OCIGGS_SRC_USER_SEED_DATA.sql.에서 SQL 스크립트를 복사하여 붙여넣습니다.

      참고:

      스크립트를 성공적으로 실행하려면 SQL 도구에 대해 각 명령문을 별도로 실행해야 할 수도 있습니다.
    5. 테이블이 성공적으로 생성되었는지 확인하려면 SQL 창을 닫고 다시 여십시오. Navigator 탭에서 SRC_OCIGGLL 스키마를 찾은 다음 각 드롭다운에서 테이블을 선택합니다.
  5. 보완 로깅 사용:
    1. SQL Worksheet를 지웁니다.
    2. 다음 명령문을 입력한 후 명령문 실행을 누릅니다.
      ALTER PLUGGABLE DATABASE ADD SUPPLEMENTAL LOG DATA;

작업 1: OCI GoldenGate 리소스 만들기

이 빠른 시작 예에서는 소스 및 대상에 대한 배치 및 접속이 필요합니다.
  1. 소스 Autonomous Transaction Processing 인스턴스에 대한 Oracle 배치를 생성합니다.
  2. 대상 Apache Kafka 노드에 대한 Big Data 배치를 생성합니다.
  3. 소스 Autonomous Transaction Processing 인스턴스에 대한 접속을 생성합니다.
  4. 대상 Kafka 노드에 대한 접속을 생성합니다.
  5. GoldenGate에 대한 접속을 생성한 다음 이 접속을 소스 Oracle 배치에 지정합니다.
  6. 소스 Oracle 배치에 ATP 접속을 지정합니다.
  7. 대상 Big Data 배치에 Kafka 접속을 지정합니다.

작업 2: Extract 추가

  1. Deployments 페이지에서 소스 Autonomous Transaction Processing 배치를 선택합니다.
  2. 배포 세부정보 페이지에서 콘솔 실행을 누릅니다.
  3. 소스 배치의 관리자 사용자 이름 및 비밀번호로 로그인합니다.
  4. 거래 정보를 추가합니다.
  5. Extract를 추가합니다.

작업 3: Distribution Path 추가 및 실행

  1. GoldenGate 인증서 저장소를 사용하는 경우 대상 Big Data 배치에서 배포 경로에 대한 사용자를 생성하고, 그렇지 않은 경우 3단계로 건너뜁니다.
  2. 소스 ATP GoldenGate 배포 콘솔에서 1단계에서 생성한 사용자에 대한 경로 연결을 추가합니다.
    1. 소스 ATP GoldenGate 배치 콘솔에서 왼쪽 탐색에서 경로 접속을 누릅니다.
    2. 경로 연결 추가(더하기 아이콘)를 누른 후 다음을 완료합니다.
      1. 인증서 별칭GGSNetwork을 입력합니다.
      2. 사용자 ID에 1단계에서 만든 사용자의 이름을 입력합니다.
      3. 확인을 위해 사용자의 비밀번호를 두 번 입력합니다.
    3. 제출을 누릅니다.

      경로 연결이 경로 연결 목록에 나타납니다.

  3. 소스 ATP 배치 콘솔에서 다음 값을 사용하여 분배 경로 추가를 수행합니다.
    1. 소스 옵션 페이지에서 다음을 수행합니다.
      • 소스 추출의 경우 태스크 2에서 생성된 추출을 선택합니다.
      • Trail Name에 2자 이름(예: E1)을 입력합니다.
    2. 대상 옵션 페이지에서 다음을 수행합니다.
      • 대상 호스트에 대해 대상 배치의 호스트 도메인을 입력합니다.
      • 포트 번호에서 443을 입력합니다.
      • Trail Name에 2자 이름(예: E1)을 입력합니다.
      • 별칭에 2단계에서 생성한 인증서 별칭을 입력합니다.
  4. 대상 Big Data 배치 콘솔에서 Distribution Path의 결과로 생성된 Receiver Path를 검토합니다.
    1. 대상 Big Data 배치 콘솔에서 Receiver Service을 누릅니다.
    2. 경로 세부 정보를 검토합니다. 이 경로는 이전 단계에서 생성된 Distribution Path의 결과로 생성되었습니다.

작업 4: Replicat 추가

  1. 대상 Big Data 배치 콘솔에서 Administration Service을 누른 다음 Replicat 추가(더하기 아이콘)를 누릅니다.
  2. Replicat를 다음 값으로 추가합니다.
    1. Replicat 정보 페이지의 Replicat 유형에서 클래식 Replicat을 선택하고 프로세스 이름을 입력한 다음 다음을 누릅니다.
    2. Replicat 옵션 페이지에서 다음을 수행합니다.
      • 이름에 태스크 3의 추적 이름을 입력합니다.
      • 타겟에 대해 Kafka를 선택합니다.
      • 별칭에 대해 작업 1에서 만든 Kafka 연결을 선택합니다.
    3. Replicat 매개변수 페이지에서 기본값을 그대로 사용합니다.
    4. [속성 파일] 페이지에서 다음 속성에 대한 항목 이름을 제공합니다.
      gg.handler.kafkahandler.topicMappingTemplate=

      토픽이 없으면 OCI GoldenGate에서 자동으로 토픽을 생성합니다.

  3. 생성 및 실행을 누릅니다.
Replicats 페이지로 돌아가서 Replicat 세부정보를 검토할 수 있습니다.

작업 5: 복제 확인

소스 Autonomous Transaction Processing 인스턴스에 대한 몇 가지 업데이트를 수행하여 Apache Kafka에 대한 복제를 확인합니다.
  1. Oracle Cloud 콘솔에서 탐색 메뉴를 열고 Oracle Database를 선택한 다음 Autonomous Transaction Processing을 선택합니다.
  2. Autonomous Transaction Processing 인스턴스 목록에서 세부정보를 볼 소스 인스턴스를 선택합니다.
  3. 데이터베이스 세부 정보 페이지에서 데이터베이스 작업을 누릅니다.

    주:

    자동으로 로그인되어 있어야 합니다. 그렇지 않은 경우 데이터베이스 인증서를 사용하여 로그인합니다.
  4. 데이터베이스 작업 홈 페이지에서 SQL을 선택합니다.
  5. 워크시트에 다음을 입력하고 스크립트 실행을 누릅니다.
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1000,'Houston',20,743113);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1001,'Dallas',20,822416);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1002,'San Francisco',21,157574);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1003,'Los Angeles',21,743878);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1004,'San Diego',21,840689);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1005,'Chicago',23,616472);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1006,'Memphis',23,580075);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1007,'New York City',22,124434);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1008,'Boston',22,275581);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1009,'Washington D.C.',22,688002);
  6. 소스 ATP 배치 콘솔에서 Extract 이름을 선택한 다음 통계를 누릅니다. SRC_OCIGGLL.SRC_CITY에 10개의 삽입이 있는지 확인합니다.
  7. 대상 Big Data 배치 콘솔에서 Replicat 이름을 선택한 다음 통계를 누릅니다. SRC_OCIGGLL.SRC_CITY에 10개의 삽입이 있는지 확인합니다.

작업 6: 프로세스 모니터 및 유지 관리

  1. 성능 모니터.
  2. 추적 파일 관리.