Teradata의 데이터 마이그레이션 개요

소개

BigQuery Data Transfer Service와 특수한 마이그레이션 에이전트를 함께 사용하면 Teradata와 같은 온프레미스 데이터 웨어하우스 시스템에서 BigQuery로 데이터를 복사할 수 있습니다. 이 문서는 BigQuery Data Transfer Service를 사용한 데이터 전송 프로세스의 개요를 제공합니다.

데이터 전송은 무료입니다. 자세한 내용은 가격 책정을 참조하세요.

데이터 웨어하우스 마이그레이션에 BigQuery Data Transfer Service를 사용하려면 먼저 로컬 데이터를 웨어하우스에 연결하는 온프레미스 마이그레이션 에이전트를 다운로드해야 합니다. 그런 다음 BigQuery Data Transfer Service에서 전송을 구성합니다.

온프레미스 마이그레이션 에이전트는 BigQuery Data Transfer Service와 통신하여 테이블을 데이터 웨어하우스에서 BigQuery로 복사합니다. BigQuery Data Transfer Service의 웹 UI를 사용하여 데이터 웨어하우스에서 BigQuery로의 반복되는 데이터 로드를 모니터링할 수 있습니다.

다음 다이어그램은 Teradata와 같은 온프레미스 데이터 웨어하우스와 BigQuery 간의 전체 데이터 흐름을 간략히 보여줍니다.

BigQuery로 데이터 추출

전송 모드 및 옵션

모든 마이그레이션에는 고유한 요구사항이 있으므로 다음과 같은 방법으로 마이그레이션 에이전트를 맞춤설정할 수 있습니다. Teradata에서 BigQuery로의 데이터 전송을 설정할 때 세 가지 주요 옵션이 있습니다.

추출 방법

BigQuery Data Transfer Service는 Teradata에서 BigQuery로 데이터를 전송하기 위한 두 가지 추출 방법을 지원합니다.

  1. JDBC 드라이버를 사용하여 FastExport 연결로 추출 이 모드에서 테이블은 로컬 파일 시스템의 지정된 위치에 AVRO 파일 컬렉션으로 추출됩니다. 추출된 파일은 지정된 Cloud Storage 버킷으로 업로드되며 전송이 성공적으로 완료되면 파일은 로컬 파일 시스템에서 삭제됩니다.
    • 로컬 파일 시스템의 공간 제한이 엄격하게 적용되며, 추출된 파일이 업로드되어 로컬 파일 시스템에서 삭제될 때까지 추출이 일시 중지됩니다.
    • 로컬 저장공간이 빠듯하거나 TPT를 사용할 수 없는 경우 이 추출 방법을 사용합니다.
    • FastExport를 사용하는 JDBC 드라이버가 기본 추출 방법입니다.
  2. Teradata Parallel Transporter(TPT) tbuild 유틸리티를 사용한 추출 이 모드에서 에이전트는 파티션별로 분산된 행을 사용하여 추출 배치를 계산합니다. 각 배치에 대해 TPT 추출 스크립트가 배출 및 실행되어 파이프로 구분된 파일 세트를 생성합니다. 각 배치 추출 후 파일은 지정된 Cloud Storage 버킷으로 업로드되고 로컬 파일 시스템에서 삭제됩니다. 로컬 파일 시스템의 공간 제한이 적용되지 않으므로 로컬 파일 시스템에 Teradata 테이블의 가장 큰 파티션을 추출할 공간이 충분한지 확인합니다.
    • TPT로 추출하고 파티션 열을 나타내도록 스키마를 맞춤설정하는 것이 좋습니다. 이것이 가장 빠른 데이터 추출 방법입니다.

추출 방법 지정에 대한 자세한 내용은 단계별 전송 설정 안내의 마이그레이션 에이전트의 구성 섹션을 참조하세요.

커스텀 스키마 파일

스키마 파일은 데이터베이스 객체를 설명하는 JSON 파일입니다. 스키마에는 데이터베이스 집합이 포함되며 각 데이터베이스에는 테이블 집합이, 각 테이블에는 집합이 포함됩니다. 각 열에는 BigQuery의 열에 할당되는 유형인 type 필드가 있습니다.

스키마 파일에서 각 객체에는 name 필드가 있으며, 이는 BigQuery에서 객체에 할당될 이름입니다. 또한 각 객체에는 originalName 필드가 있으며, 이는 Teradata 데이터베이스에서 일치하는 객체의 이름입니다.

BigQuery Data Transfer Service는 Teradata에서 BigQuery로의 데이터 전송 중에 자동 스키마 감지 및 데이터 변환을 제공합니다. 선택적으로 커스텀 스키마 파일을 지정할 수도 있습니다. 일부 상황에서는 스키마를 맞춤설정하는 것이 권장됩니다. 예를 들면 다음과 같습니다.

  • 커스텀 스키마 파일은 파티션 나누기와 같이 스키마 파일이 지정되지 않은 경우 마이그레이션 중에 손실되는 테이블에 대한 추가 정보를 포함하는 데 특히 유용합니다. 커스텀 스키마 파일 옵션을 사용하는 방법에 대해 자세히 알아보세요.
  • 데이터 전송 중에 객체의 name 필드나 열의 usageType 배열과 같은 필드를 변환할 커스텀 스키마 파일을 제공하도록 선택할 수 있습니다.
  • 자세한 내용은 커스텀 스키마 파일을 참조하세요.

주문형 또는 증분 전송

Teradata 데이터베이스 인스턴스에서 BigQuery로 데이터를 마이그레이션할 때 BigQuery Data Transfer Service는 일회성 스냅샷 데이터 전송('주문형 전송')과 새로운 행과 업데이트된 행의 반복적, 주기적 전송('증분 전송' - 베타), 두 가지를 모두 지원합니다. 전송 설정 시, 일정 옵션에서 전송을 주문형 또는 증분으로 지정합니다.

  • 주문형 데이터 전송
    • 테이블이 매우 크고 TPT로 추출하여 성능을 높일 수 있는 경우 Teradata 테이블을 파티션으로 나누어 파티션별 추출을 허용하는 것이 좋습니다. 자세한 내용은 커스텀 스키마 파일을 참조하세요.
    • 테이블이 작거나 TPT를 사용할 수 없는 경우 기본 안내를 따르세요. 스키마 맞춤설정은 필요하지 않습니다.
  • 증분 데이터 전송
    • Teradata에서 BigQuery로 정기적으로 변경사항을 마이그레이션하려면 증분 모드를 사용하면 됩니다. Teradata의 새로운 레코드와 변경된 레코드가 반복적으로 BigQuery 테이블에 추가됩니다.
    • 이 방법을 사용하려면 스키마를 맞춤설정하여 COMMIT_TIMESTAMP 열을 주석 처리해야 합니다.
    • 증분 전송을 설정할 때 특정 조건이 적용됩니다. 자세한 내용은 증분 전송을 참조하세요.

위치 고려 사항

  • 데이터 로드용 Cloud Storage 버킷을 같은 위치에 배치합니다.
    • BigQuery Data Transfer Service 데이터세트가 멀티 리전 위치에 있는 경우 로드하는 데이터가 포함된 Cloud Storage 버킷은 같은 위치의 리전이나 멀티 리전 버킷에 있어야 합니다. 예를 들어 BigQuery Data Transfer Service 데이터세트가 EU에 있으면 Cloud Storage 버킷은 EU 내 리전 또는 멀티 리전 버킷에 있어야 합니다.
    • 데이터세트가 리전 위치에 있는 경우 Cloud Storage 버킷은 같은 위치의 리전 버킷에 있어야 합니다. 예를 들어 데이터세트가 도쿄 리전에 있으면 Cloud Storage 버킷은 도쿄 내 리전 버킷에 있어야 합니다.
    • 예외: 데이터세트가 US 멀티 리전 위치에 있는 경우 어느 리전이나 멀티 리전 위치의 Cloud Storage 버킷에서도 데이터를 로드할 수 있습니다.

    가격 책정

    BigQuery Data Transfer Service를 사용하여 데이터 웨어하우스 인스턴스를 마이그레이션하는 것은 무료입니다.

    • 추출, Cloud Storage 버킷에 업로드, BigQuery에 데이터를 로드하는 것은 무료입니다.
    • BigQuery에 업로드된 데이터는 Cloud Storage 버킷에서 자동으로 삭제되지 않습니다. 추가 스토리지 비용을 방지하기 위해 Cloud Storage 버킷에서 데이터를 삭제하세요. Cloud Storage 가격 책정을 참조하세요.

    제한사항

    • 일회성 주문형 전송은 완전히 지원됩니다. 증분 전송은 베타입니다. 증분 전송의 DDL/DML 작업은 부분적으로 지원됩니다.
    • 데이터는 로컬 파일 시스템(온프레미스)의 폴더로 추출됩니다. 충분한 여유 공간이 있는지 확인하세요.
      • FastExport 추출 모드를 사용하는 경우 사용할 최대 저장공간, 그리고 마이그레이션 에이전트가 엄격하게 적용할 한도를 설정할 수 있습니다. Teradata에서 BigQuery로 전송을 설정할 때 마이그레이션 에이전트의 구성 파일max-local-storage 설정을 설정합니다.
      • TPT 추출 방법을 사용하는 경우 파일 시스템의 여유 공간이 충분한지 확인합니다. 최소한 Teradata 인스턴스에 있는 가장 큰 테이블 파티션의 크기와 동일해야 합니다.
    • BigQuery Data Transfer Service는 스키마를 자동으로 변환하고(커스텀 스키마 파일을 제공하지 않은 경우) Teradata 데이터를 BigQuery로 전송합니다. 데이터는 Teradata에서 BigQuery 유형으로 매핑됩니다.
    • 파일은 로컬 파일 시스템에서 업로드되고 BigQuery에 로드된 후 Cloud Storage 버킷에서 자동으로 삭제되지 않습니다. 추가 스토리지 비용을 방지하기 위해 BigQuery로 데이터를 로드한 후 Cloud Storage 버킷에서 데이터를 삭제하세요. 가격 책정을 참조하세요.
    • 추출 속도는 JDBC 연결에 따라 좌우됩니다.
    • Teradata에서 추출된 데이터는 암호화되지 않습니다. 로컬 파일 시스템에서 추출된 파일에 대한 액세스를 제한하기 위한 적절한 조치를 취하고 Cloud Storage 버킷이 제대로 보호되는지 확인합니다.

    • 기록된 프로시저, 저장된 쿼리, 뷰, 사용자 정의 함수와 같은 다른 데이터베이스 리소스는 전송되지 않으며 이 서비스의 범위에 포함되지 않습니다.

    다음 단계