변경 내역 작업

BigQuery 변경 내역을 사용하면 BigQuery 테이블의 변경 내역을 추적할 수 있습니다. GoogleSQL 함수 를 사용하여 지정된 기간 동안 발생한 특정 유형의 변경사항을 확인하여 테이블에 적용된 점진적 변경사항을 처리할 수 있습니다. 테이블에 어떤 변경 사항이 발생했는지 이해하면, 비용이 많이 드는 복사를 방지하면서 BigQuery 외부에서 테이블 복제본을 점진적으로 유지하는 등의 작업을 할 수 있습니다.

필수 권한

테이블의 변경 내역을 보려면 해당 테이블에 대한 bigquery.tables.getData 권한이 필요합니다. 다음과 같은 사전 정의된 Identity and Access Management(IAM) 역할에 이 권한이 포함되어 있습니다.

  • roles/bigquery.dataViewer
  • roles/bigquery.dataEditor
  • roles/bigquery.dataOwner
  • roles/bigquery.admin

테이블에 행 수준 액세스 정책이 있거나 있었던 경우 테이블 관리자만 테이블의 이전 데이터에 액세스할 수 있습니다. bigquery.rowAccessPolicies.overrideTimeTravelRestrictions 권한은 테이블에 필요하며 사전 정의된 roles/bigquery.admin IAM 역할에 포함되어 있습니다.

테이블에 열 수준 보안이 설정된 경우 액세스할 수 있는 열에 대한 변경 내역만 볼 수 있습니다.

변경 내역 함수

다음 함수를 사용하여 테이블의 변경 내역을 이해할 수 있습니다.

가격 책정 및 비용

변경 내역 함수를 호출하면 BigQuery 컴퓨팅 비용이 발생합니다. APPENDSCHANGES 함수 모두 지정된 기간 내에 테이블에 작성된 모든 데이터를 처리해야 합니다. 이 처리는 추가 및 변경 작업 모두를 포함한 모든 쓰기에 적용됩니다. 테이블의 enable_change_history 옵션FALSE로 설정해도 APPENDS에서 처리하는 데이터가 줄어들지 않습니다.

`CHANGES` 함수를 사용하기 위해 테이블의 enable_change_history 옵션TRUE로 설정하면 BigQuery는 테이블 변경 메타데이터를 저장합니다. 이 저장된 메타데이터 로 인해 추가 BigQuery 스토리지 비용BigQuery 컴퓨팅 비용이 발생합니다. 청구되는 금액은 테이블을 변경한 횟수와 유형에 따라 달라지며, 일반적으로 소액입니다. 변경 작업이 많은 테이블, 특히 대규모 삭제는 눈에 띄는 비용이 발생할 가능성이 가장 큽니다.