HeatWave에서 Azure 이벤트 허브로 데이터 전송

OCI GoldenGate를 사용하여 HeatWave에서 Azure Event Hubs로 데이터를 복제하는 방법을 확인해 보세요.

시작하기 전에

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

환경 설정: HeatWave

이 Quickstart에 대한 환경을 설정하려면 다음을 수행합니다.

  1. 샘플 데이터 스크립트 다운로드를 수행한 다음, HeatWave 데이터베이스에서 스크립트를 실행하여 데이터베이스를 생성하고 데이터를 로드합니다.

  2. 다음 스크립트를 사용하여 ggadmin 사용자를 만듭니다. <ggadmin-password>를 적합한 비밀번호로 바꾸어야 합니다.

    CREATE USER 'ggadmin' IDENTIFIED BY '<ggadmin-password>';
    GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT, CREATE,CREATE VIEW, EVENT, INSERT, UPDATE, DROP,EXECUTE, DELETE ON *.* TO 'ggadmin';
  3. OCI GoldenGate가 접속할 수 있는 port 3306를 엽니다.

    1. Oracle Cloud 콘솔에서 HeatWave 데이터베이스가 사용하는 서브넷을 찾습니다.

    2. 서브넷의 보안 목록에서 port TCP/3306에 대한 수신 규칙을 만듭니다.

작업 1: OCI GoldenGate 리소스 생성

  1. 소스 HeatWave 데이터베이스에 대한 MySQL 배치를 생성합니다.

  2. 대상 Azure 이벤트 허브에 대한 빅 데이터 배포를 생성합니다.

  3. 소스 MySQL Heatwave 데이터베이스에 대한 접속을 생성합니다.

  4. Azure Event Hubs 연결을 생성합니다.

  5. GoldenGate에 대한 접속을 생성한 다음 소스 MySQL 배치에 이 접속을 지정합니다.

  6. 소스 접속을 소스 MySQL 배치에 지정합니다.

  7. 대상 Big Data 배치에 대상 접속을 지정합니다.

작업 2: 추출 생성

  1. Deployments 페이지에서 Task 1에서 생성한 MySQL 배치를 선택합니다.

  2. 배포 세부정보 페이지에서 콘솔 실행을 선택합니다.

  3. 작업 1에서 배치를 생성할 때 지정된 관리자 인증서를 사용하여 소스 MySQL 배치 콘솔에 사인인합니다.

  4. 다음 값을 사용하여 변경 데이터 수집 추출 추가:

    • 추출 유형: 변경 데이터 수집 추출

    • 프로세스 이름: ECDC

    • 추출 추적 이름: C1

    • 매개변수 파일: MAP *.*, TARGET *.*;TABLE SRC_OCIGGLL.*;로 바꿉니다.

작업 3: 대상 Big Data 배치에 대한 배포 경로 생성

  1. IAM 인증서 저장소를 사용하는 경우 3단계를 진행합니다. GoldenGate 인증서 저장소를 사용하는 경우 소스 GoldenGate가 대상 GoldenGate에 접속하는 데 사용하는 사용자를 생성합니다.

    1. [배치] 페이지에서 대상 Big Data 배치를 선택합니다.

    2. 배치 세부정보 페이지에서 콘솔 실행을 선택한 다음 관리 사용자로 로그인합니다.

    3. 배포 콘솔 탐색 메뉴에서 사용자 관리를 선택합니다.

    4. 새 사용자 추가(더하기 아이콘)를 선택하고 다음과 같이 필드에 정보를 입력한 다음 제출을 선택합니다.

      • 사용자 이름ggsnet을 입력합니다.

      • 역할에 대해 연산자를 선택합니다.

      • 확인을 위해 암호를 두 번 입력합니다.

  2. 소스 MySQL 배치 콘솔에서 이전 단계에서 생성한 사용자에 대한 경로 접속을 생성합니다.

    1. 탐색 메뉴를 열고 경로 접속을 선택합니다.

    2. 경로 연결 추가(더하기 아이콘)를 선택하고 다음과 같이 필드를 입력한 다음 제출을 선택합니다.

      • 자격 증명 별칭dpuser을 입력합니다.

      • 사용자 IDggsnet를 입력합니다.

      • 비밀번호의 경우 이전 단계에서 사용된 것과 동일한 비밀번호를 입력합니다.

  3. 소스 MySQL 배치 콘솔에서 다음 값을 사용하여 aDistribution Path를 추가합니다.

    1. 소스 옵션 페이지에서 다음을 수행합니다.

      • 소스 추출의 경우 태스크 2에서 생성된 추출을 선택합니다.

      • 트레일 이름에 2자 이름(예: C1)을 입력합니다.

    2. 대상 옵션 페이지에서 다음을 수행합니다.

      • 대상 호스트에 대상 배치의 호스트 도메인을 입력합니다.

      • 포트 번호에서 443을 입력합니다.

      • 트레일 이름에 2자 이름(예: C1)을 입력합니다.

      • 별칭의 경우 단계 2에서 생성된 인증서 별칭을 입력합니다.

  4. 대상 OCI GoldenGate Big Data 배치 콘솔에서 배포 경로의 결과로 생성된 수신기 경로를 검토합니다.

    1. 수신기 서비스를 선택합니다.

    2. 수신기 경로 세부정보를 검토합니다.

작업 4: Azure 이벤트 허브에 대한 Replicat 추가

  1. Big Data 배치에서 관리자 서비스를 선택한 다음 복제 추가(더하기 아이콘)를 선택합니다.

  2. 다음 값을 사용하여 aReplicat를 추가합니다.

    1. [복제 정보] 페이지의 [복제] 유형에서 클래식 복제를 선택하고 프로세스 이름을 입력합니다.

    2. Replicat Options 페이지에서 다음을 수행합니다.

      • 트레일 이름에 태스크 2의 추적 이름을 입력합니다.

      • 대상에 대해 Azure 이벤트 허브를 선택합니다.

      • 별칭의 경우 태스크 1에서 생성된 Azure 이벤트 허브 연결을 선택합니다.

    3. Replicat Parameters 페이지에서 기본값을 그대로 둡니다.

    4. [속성 파일] 페이지에서 topicMappingTemplate에 대한 항목 이름을 제공합니다.

    5. 생성 및 실행을 선택합니다.

작업 5: HeatWave에서 Azure 이벤트 허브로 데이터 복제 확인

소스 HeatWave 데이터베이스에 대한 업데이트를 수행하여 Azure 이벤트 허브에 대한 복제를 확인합니다.

  1. OCI 배스천에서 MySQL IP 및 port 3306를 사용하여 SSH 포트 전달 세션을 생성합니다. 퍼블릭 SSH 키를 추가합니다.

  2. 프라이빗 키와 port 3306을 사용하여 Cloud Shell에서 MySQL에 접속합니다.

  3. 성공적으로 연결한 후 다음 명령을 실행합니다.

    mysqlsh admin@localhost:3306 --sql
  4. 다음 스크립트를 실행하여 HeatWave 데이터베이스에 삽입을 수행합니다.

    use SRC_OCIGGLL;
    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);
    commit;
  5. 소스 MySQL 배치 콘솔에서 변경 데이터 캡처 추출 이름을 선택한 다음 통계를 선택합니다. SRC_OCIGGLL.SRC_CITY에 10개의 삽입이 있는지 확인합니다.

  6. 대상 Big Data 배치 콘솔에서 Replicat 이름을 선택한 다음 통계를 선택합니다. SRC_OCIGGLL.SRC_CITY에 10개의 삽입이 있는지 확인합니다.

  7. Azure Event Hubs에서는 메시지 통계를 확인할 수 있습니다.