BigQuery 대상

이 페이지에서는 BigQuery 대상에 대해 간략히 설명합니다. BigQuery에 데이터를 복제할 때 Datastream의 쓰기 동작과 알려진 제한사항을 설명합니다.

쓰기 동작

  • BigQuery에 데이터를 스트리밍할 때 최대 이벤트 크기는 20MB입니다.

  • 스트림을 구성할 때 Datastream이 변경 데이터를 BigQuery에 기록하는 방법을 선택할 수 있습니다. 자세한 내용은 쓰기 모드 구성을 참조하세요.

테이블 메타데이터

Datastream은 BigQuery 대상에 기록되는 각 테이블에 datastream_metadata라는 STRUCT 열을 추가합니다.

병합 쓰기 모드

테이블에 소스의 기본 키가 있으면 열에 다음 필드가 포함됩니다.

  • UUID: 이 필드에는 STRING 데이터 유형이 포함됩니다.
  • SOURCE_TIMESTAMP: 이 필드에는 INTEGER 데이터 유형이 포함됩니다.

테이블에 기본 키가 없으면 열에 IS_DELETED 추가 필드가 포함됩니다. 이 필드의 데이터 유형은 BOOLEAN이며, Datastream이 대상에 스트리밍하는 데이터가 소스의 DELETE 작업과 연결되어 있는지 여부를 나타냅니다. 기본 키가 없는 테이블은 추가만 가능합니다.

추가 전용 쓰기 모드

datastream_metadata 열에는 테이블에 기본 키가 있든 없든 동일한 필드가 포함되어 있습니다.

  • UUID: 이 필드에는 STRING 데이터 유형이 포함됩니다.
  • SOURCE_TIMESTAMP: 이 필드에는 INTEGER 데이터 유형이 포함됩니다.
  • CHANGE_SEQUENCE_NUMBER: 이 필드에는 STRING 데이터 유형이 포함됩니다. 각 변경 이벤트에 대해 Datastream에 사용되는 내부 시퀀스 번호입니다.
  • CHANGE_TYPE: 이 필드에는 STRING 데이터 유형이 포함됩니다. 변경 이벤트 유형 INSERT, UPDATE-INSERT, UPDATE-DELETE, DELETE를 나타냅니다.
  • SORT_KEYS: 이 필드에는 STRING 값 배열이 포함됩니다. 이 값을 사용하여 변경 이벤트를 정렬할 수 있습니다.

BigQuery 비용 관리

BigQuery 비용은 Datastream과 별도로 청구됩니다. BigQuery 비용을 관리하는 방법은 BigQuery CDC 가격 책정을 참고하세요.

알려진 제한사항

BigQuery를 대상으로 사용할 경우의 알려진 제한사항은 다음과 같습니다.

  • 동일한 Google Cloud 프로젝트에 있는 BigQuery 데이터 세트에만 데이터를 Datastream 스트림으로 복제할 수 있습니다.
  • 기본적으로 Datastream은 기본 키 없이 BigQuery에 이미 복제된 테이블에 기본 키를 추가하거나 기본 키로 BigQuery에 복제된 테이블에서 기본 키를 삭제할 수 없습니다. 이러한 변경사항을 수행해야 하는 경우 Google 지원팀에 문의하세요. 기본 키가 이미 있는 소스 테이블의 기본 키 정의 변경에 대한 자세한 내용은 문제 진단을 참고하세요.
  • BigQuery의 기본 키는 데이터 유형이 다음과 같아야 합니다.

    • DATE
    • BOOL
    • GEOGRAPHY
    • INT64
    • NUMERIC
    • BIGNUMERIC
    • STRING
    • TIMESTAMP
    • DATETIME

    지원되지 않는 데이터 유형의 기본 키가 포함된 테이블은 Datastream에 의해 복제되지 않습니다.

  • BigQuery는 ., $, /, @ 또는 + 문자가 포함된 테이블 이름을 지원하지 않습니다. Datastream은 대상 테이블을 만들 때 이러한 문자를 밑줄로 대체합니다.

    예를 들어 소스 데이터베이스의 table.name은 BigQuery에서 table_name이 됩니다.

    BigQuery의 테이블 이름에 대한 자세한 내용은 테이블 이름 지정을 참고하세요.

  • BigQuery는 4개를 초과하는 클러스터링 열을 지원하지 않습니다. 기본 키 열이 4개를 초과하는 테이블을 복제할 때 Datastream은 기본 키 열 4개를 클러스터링 열로 사용합니다.

  • Datastream은 PostgreSQL infinity 날짜 유형과 같은 범위를 벗어난 날짜 및 시간 리터럴을 다음 값에 매핑합니다.

    • 양수 DATE9999-12-31 값으로
    • 음수 DATE0001-01-01 값으로
    • 양수 TIMESTAMP9999-12-31 23:59:59.999000 UTC 값으로
    • 음수 TIMESTAMP0001-01-01 00:00:00 UTC 값으로
  • BigQuery는 FLOAT 또는 REAL 데이터 유형의 기본 키가 있는 스트리밍 테이블을 지원하지 않습니다. 이러한 테이블은 복제되지 않습니다. BigQuery 날짜 유형 및 범위에 대한 자세한 내용은 데이터 유형을 참고하세요.

  • 소스가 Salesforce인 경우 각 스키마의 데이터 세트 구성 옵션은 지원되지 않습니다.

다음 단계