스트림 만들기

개요

이 섹션에서는 스트림을 만드는 방법을 알아봅니다. Datastream은 이 스트림을 사용해서 소스 Oracle 또는 MySQL 데이터베이스의 데이터를 Cloud Storage의 대상 버킷으로 전송합니다.

스트림 만들기에는 다음이 포함됩니다.

  • 스트림 설정을 정의합니다.
  • 소스 Oracle 또는 MySQL 데이터베이스(소스 연결 프로필)에 대해 만든 연결 프로필을 선택하거나 소스 연결 프로필을 만들지 않았으면 만듭니다.
  • 소스 데이터베이스의 테이블 및 스키마를 지정하여 스트림의 소스 데이터베이스에 대한 정보를 구성하여 Datastream이 다음을 수행합니다.
    • 대상으로 전송합니다.
    • 대상으로 전송이 제한됩니다.
  • Datastream이 계속되는 스트림 변경사항 뿐만 아니라 이전 데이터를 대상으로 백필하거나 변경사항만 데이터로 스트리밍할지 결정합니다. 내역 백필을 사용 설정하면 Datastream이 대상으로 백필하지 않아야 할 스키마 및 테이블을 소스 데이터베이스에서 선택적으로 지정할 수 있습니다.
  • Cloud Storage용으로 만든 연결 프로필을 선택합니다.
  • 스트림의 대상 버킷 정보를 구성합니다. 이러한 정보에는 다음이 포함됩니다.
    • Datastream이 소스 데이터베이스에서 스키마, 테이블, 데이터를 전송할 대상 버킷의 폴더입니다.
    • Cloud Storage에 기록된 파일의 형식입니다.
  • 스트림이 성공적으로 실행될지 확인합니다. 스트림 검사 시 다음을 확인합니다.

    • Datastream이 데이터를 스트림하도록 소스가 올바르게 구성되었는지 확인합니다.
    • 스트림이 소스 및 대상에 모두 연결할 수 있는지 확인합니다.

    • 스트림의 엔드 투 엔드 구성을 확인합니다.

스트림 설정 정의

  1. Google Cloud Console에서 스트림 페이지로 이동합니다.

    스트림 페이지로 이동

  2. 스트림 만들기를 클릭합니다.

  3. 다음 표에 따라 스트림 만들기 페이지에서 스트림 세부정보 정의 섹션의 각 필드를 작성합니다.

    필드설명
    스트림 이름스트림의 표시 이름을 입력합니다.
    스트림 IDDatastream은 입력한 스트림 이름을 기반으로 이 필드를 자동으로 채웁니다. 자동으로 생성된 ID를 유지하거나 변경할 수 있습니다.
    리전스트림이 저장된 리전을 선택합니다. 모든 리소스와 마찬가지로 스트림이 리전에 저장됩니다. 리전 선택은 스트림이 소스 데이터베이스 또는 Cloud Storage의 대상 버킷에 연결될 수 있는지 여부에 영향을 주지 않지만 리전에 다운타임이 발생할 때 가용성에 영향을 줄 수 있습니다.
    소스 유형

    소스 데이터베이스에 대해 연결 프로필을 만들 때 지정한 프로필 유형을 선택합니다. 또는 소스 데이터베이스에 대해 연결 프로필을 만들지 않았으면 지금 만들 수 있습니다.

    대상 위치 유형

    대상 스토리지 Cloud 서비스에 대해 연결 프로필을 만들 때 지정한 프로필 유형을 선택합니다. 또는 대상에 대해 연결 프로필을 만들지 않았으면 지금 만들 수 있습니다.

    암호화

    기본적으로 데이터는 Google Cloud에서 관리하는 키로 암호화됩니다. 암호화를 직접 관리하려면 고객 관리 암호화 키(CMEK)를 사용하면 됩니다. 방법은 다음과 같습니다.

    1. CMEK 사용 체크박스를 선택합니다.
    2. CMEK 선택 드롭다운 메뉴에서 CMEK를 선택합니다.

    키가 표시되지 않으면 키 리소스 이름 입력을 클릭하여 사용할 키의 리소스 이름을 제공합니다. 예를 들어 키 리소스 이름 필드에 projects/my-project-name/locations/my-location/keyRings/my-keyring/cryptoKeys/my-key를 입력한 다음 저장을 클릭합니다.

  4. 필요에 따라 라벨을 사용해서 Datastream 리소스를 정리합니다.

    1. 라벨을 만들려면 라벨 추가를 클릭한 후 라벨의 키-값 쌍을 입력합니다.
    2. 라벨을 삭제하려면 라벨이 포함된 행 오른쪽의 휴지통 아이콘을 클릭합니다.
  5. 스트림에 맞게 환경을 준비해야 하는 방법이 자동으로 반영되도록 생성된 필수 기본 요건을 검토합니다. 이러한 기본 요건에는 소스 데이터베이스 구성 방법과 Cloud Storage의 대상 버킷에 이를 연결하는 방법이 포함될 수 있습니다. 이 단계에서 이러한 기본 요건을 완료하는 것이 가장 좋지만, 스트림을 테스트하거나 시작하기 전 언제라도 이를 완료할 수 있습니다. 이러한 기본 요건에 대한 자세한 내용은 소스 Oracle 데이터베이스 구성을 참조하세요.

  6. 계속을 클릭합니다. 스트림 만들기 페이지의 연결 프로필 정의 패널이 소스 데이터베이스 유형에 대해 표시됩니다.

소스 연결 프로필 정보 지정

  1. Oracle 또는 MySQL에 대해 소스 연결 프로필을 만들었으면 연결 프로필 목록에서 이를 선택합니다.

    소스 연결 프로필을 만들지 않았으면 드롭다운 목록 아래에서 연결 프로필 만들기를 클릭하여 프로필을 하나 만들고 연결 프로필 만들기와 동일한 단계를 수행합니다.

  2. 테스트 실행을 클릭하여 소스 데이터베이스 및 Datastream이 서로 통신할 수 있는지 확인합니다.

    테스트에 실패하면 연결 프로필과 관련된 문제가 표시됩니다. 문제 해결을 위해 필요한 항목을 변경한 후 다시 테스트합니다.

  3. 계속을 클릭합니다. 스트림 만들기 페이지의 스트림 소스 구성 패널이 표시됩니다.

스트림에 대해 소스 데이터베이스 정보 구성

  1. 포함할 객체 선택 섹션에서 포함할 객체 드롭다운 메뉴를 사용하여 Datastream이 Cloud Storage의 대상 버킷에 있는 폴더로 전송할 수 있는 소스 데이터베이스의 테이블 및 스키마를 지정합니다.

    1. Datastream이 모든 테이블 및 스키마를 전송하도록 하려면 모든 스키마의 모든 테이블을 선택합니다.
    2. Datastream이 특정 테이블 및 스키마만 전송하도록 하려면 특정 스키마 및 테이블을 선택한 후 Datastream이 전송할 스키마 및 테이블의 체크박스를 선택합니다.

    3. Datastream이 전송할 테이블 및 스키마에 대해 텍스트 정의를 제공하려면 커스텀 수동 정의를 선택한 후 객체 일치 조건 필드에서 Datastream이 전송할 스키마 및 테이블을 입력합니다.

  2. 필요에 따라 제외할 객체 선택 노드를 확장합니다. 제외할 객체 필드에서 Datastream이 Cloud Storage 대상 버킷의 폴더로 전송하지 않도록 제한하려는 소스 데이터베이스의 테이블 및 스키마를 입력합니다.

  3. 필요에 따라 이전 데이터의 백필 모드 선택 노드를 확장한 후 다음 항목 중 하나를 선택합니다.
    1. 데이터 변경사항 외에도 소스에서 대상으로 모든 기존 데이터를 스트리밍하려면 자동 옵션을 선택합니다.

      자동 백필에서 제외된 객체 필드에서 Datastream이 대상에 백필하지 못하도록 제한할 소스 데이터베이스의 테이블 및 스키마를 입력합니다.

    2. 변경사항만 대상의 데이터에 스트리밍하려면 수동 옵션을 선택합니다.
  4. 계속을 클릭합니다. 스트림 만들기 페이지의 Cloud Storage 연결 프로필 정의 패널이 표시됩니다.

대상 연결 프로필 선택

  1. 대상 연결 프로필을 만들었으면 연결 프로필 목록에서 선택합니다.

    대상 연결 프로필을 만들지 않았으면 드롭다운 목록 아래에서 연결 프로필 만들기를 클릭하여 프로필을 하나 만들고 연결 프로필 만들기와 동일한 단계를 수행합니다.

  2. 계속을 클릭합니다. 스트림 만들기 페이지의 스트림 대상 구성 패널이 표시됩니다.

스트림의 대상 정보 구성

  1. 선택적으로 스트림 경로 프리픽스 필드에 Datastream이 소스 데이터베이스에서 스키마, 테이블, 데이터를 전송할 대상 버킷의 폴더를 입력합니다.

    예를 들어 Datastream이 소스 데이터베이스의 데이터를 대상 버킷의 /root/example 폴더로 전송하도록 하려면 스트림 경로 프리픽스 필드에 /root/example을 입력합니다.

  2. 출력 형식 필드에서 Cloud Storage에 기록된 파일 형식을 선택합니다.

  3. 선택사항. JSON 형식을 선택하면 다음 두 가지 체크박스가 표시됩니다.

    1. 파일 경로에 통합 유형 스키마 파일 포함: 이 체크박스를 선택하면 Datastream이 Cloud Storage에 JSON 데이터 파일 및 Avro 스키마 파일의 두 가지 파일을 기록합니다. 스키마 파일에는 .schema 확장자와 함께 데이터 파일과 동일한 이름이 사용됩니다. 이 체크박스를 선택하지 않으면 Datastream이 JSON 데이터 파일만 Cloud Storage에 기록합니다. 이 체크박스는 기본적으로 선택되지 않습니다.
    2. gzip 압축 사용 설정: 이 체크박스를 선택하면 Datastream이 gzip 유틸리티를 사용해서 Datastream이 Cloud Storage에 기록하는 파일을 압축합니다. 이 체크박스를 선택하지 않으면 Datastream이 파일을 압축하지 않고 Cloud Storage에 기록합니다. 이 체크박스는 기본적으로 선택되어 있습니다.
  4. 계속을 클릭합니다. 스트림 만들기 페이지의 스트림 세부정보 검토 및 만들기 패널이 표시됩니다.

스트림 만들기

  1. 스트림은 물론 소스 데이터베이스에서 Cloud Storage의 대상 버킷으로 데이터를 전송하기 위해 스트림에 사용되는 소스 및 대상 연결 프로필에 대한 세부정보를 확인합니다.

  2. 검증 실행을 클릭하여 스트림을 검증합니다. Datastream은 스트림을 검증하여 소스가 올바르게 구성되었는지 확인하고, 스트림이 소스 및 대상 모두에 연결할 수 있는지 확인하고, 스트림의 엔드 투 엔드 구성을 확인합니다.

    1. 소스 데이터베이스가 Oracle인 경우 Datastream이 다음 확인을 수행합니다.

      확인설명
      객체 목록 유효성Datastream이 제외 목록에 포함 목록이 포함되지 않는지 확인합니다.
      정방향 SSH 터널 연결Datastream이 정방향 SSH 터널을 통해 배스천 호스트에 연결할 수 있는지 확인합니다.
      Oracle 데이터베이스에 대한 연결Datastream이 소스 Oracle 데이터베이스에 연결할 수 있는지 확인합니다.
      Oracle 사용자 권한Datastream이 소스 데이터베이스 연결을 위해 사용되는 사용자에게 데이터베이스에서 스키마, 테이블, 데이터를 검색하는 데 필요한 모든 권한이 있어서 Datastream이 이 정보를 대상으로 스트리밍할 수 있는지 확인합니다.
      로깅 모드 구성Datastream이 Oracle 데이터베이스의 로깅 모드가 ARCHIVELOG로 설정되었는지 확인합니다.
      추가 로깅 구성Datastream이 소스에서 대상으로 스트리밍되는 데이터베이스 테이블에 대해 보조 로깅이 설정되었는지 확인합니다.
      로그 파일 구성 보관처리Datastream이 보관처리 로깅이 소스에 구성되어 있고 보관처리 로그 파일이 제공되었는지 확인합니다.
      Cloud Storage 권한Datastream이 Cloud Storage의 대상 버킷에 기록하는 데 필요한 권한이 있는지 확인합니다.
    2. 소스 데이터베이스가 MySQL인 경우 Datastream이 다음 확인을 수행합니다.

      확인설명
      객체 목록 유효성Datastream이 제외 목록에 포함 목록이 포함되지 않는지 확인합니다.
      정방향 SSH 터널 연결Datastream이 정방향 SSH 터널을 통해 배스천 호스트에 연결할 수 있는지 확인합니다.
      MySQL 데이터베이스에 대한 연결Datastream이 소스 MySQL 데이터베이스에 연결할 수 있는지 확인합니다.
      바이너리 로깅을 사용 설정했습니다.Datastream이 바이너리 로그 파일이 올바르게 구성되었고 로그 파일이 제공되었는지 확인합니다.
      바이너리 로그 형식 구성Datastream이 MySQL 데이터베이스의 바이너리 로그 형식이 ROW로 설정되었는지 확인합니다.
      복제 권한Datastream이 MySQL 데이터베이스를 복제하는 데 필요한 권한이 있는지 확인합니다.
      Cloud Storage 권한Datastream이 Cloud Storage의 대상 버킷에 기록하는 데 필요한 권한이 있는지 확인합니다.
  3. 모든 검증 확인을 통과했으면 만들기 및 시작을 클릭하여 스트림을 만들고 이를 즉시 시작하거나 만들기를 클릭하여 스트림을 만들고 이를 즉시 시작하지는 않습니다.

    스트림을 지금 시작하지 않을 경우에는 시작을 클릭하여 스트림 페이지에서 시작할 수 있습니다.

스트림을 만든 후에는 이에 대한 개요 및 세부정보를 확인할 수 있습니다.