테이블 스냅샷에 대한 정보 가져오기

이 문서에서는 INFORMATION_SCHEMA 테이블의 TABLE_SNAPSHOTS 뷰를 쿼리하거나, bq show 명령어를 사용하거나, tables.get API를 호출하여 Google Cloud Console에서 BigQuery 테이블 스냅샷의 메타데이터를 보는 방법을 설명합니다. 이 문서는 BigQuery 테이블테이블 스냅샷에 익숙한 사용자를 대상으로 합니다.

권한 및 역할

이 섹션에서는 테이블 스냅샷에 대해 메타데이터를 확인하기 위해 필요한 Identity and Access Management(IAM) 권한 및 이러한 권한을 부여하는 사전 정의된 IAM 역할에 대해 설명합니다.

권한

테이블 스냅샷의 메타데이터를 확인하려면 다음 권한이 필요합니다.

권한 리소스
bigquery.tables.get 테이블 스냅샷

역할

필요한 권한을 제공하는 사전 정의된 BigQuery 역할은 다음과 같습니다.

역할 리소스
다음 중 하나인 경우:

bigquery.metadataViewer
bigquery.dataViewer
bigquery.dataEditor
bigquery.dataOwner
bigquery.admin
테이블 스냅샷

테이블 스냅샷의 메타데이터 가져오기

테이블 스냅샷의 메타데이터는 표준 테이블의 메타데이터와 비슷하지만 다음과 같은 차이가 있습니다.

  • 추가 baseTableReference 필드는 스냅샷이 생성된 기본 테이블을 식별합니다.
  • type 필드에는 SNAPSHOT 값이 포함됩니다.

예를 들어 다음과 같이 library_backup.books 테이블 스냅샷에 대해 메타데이터를 확인할 수 있습니다.

Console

  1. 콘솔에서 BigQuery 페이지로 이동합니다.

    BigQuery로 이동

  2. 탐색기 창에서 library_backup.books 테이블의 프로젝트 및 데이터 세트 노드를 확장합니다.

  3. 표시되는 도서 창에서 다음을 수행할 수 있습니다.

    • 스키마 탭을 클릭하여 테이블 스냅샷의 스키마 및 액세스 정책을 확인합니다.

    • 세부정보 테이블을 클릭하여 테이블 스냅샷의 크기, 만료, 기본 테이블, 스냅샷 시간, 기타 정보를 확인합니다.

SQL

테이블 스냅샷의 메타데이터를 보려면 INFORMATION_SCHEMA.TABLE_SNAPSHOTS를 쿼리합니다.

  1. Console에서 BigQuery 페이지로 이동합니다.

    BigQuery로 이동

  2. 쿼리 편집기에서 다음 문을 입력합니다.

    SELECT
      *
    FROM
      myproject.library_backup.INFORMATION_SCHEMA.TABLE_SNAPSHOTS
    WHERE
      table_name = 'books';
    

  3. 실행을 클릭합니다.

쿼리를 실행하는 방법에 대한 자세한 내용은 대화형 쿼리 실행을 참조하세요.

bq

Cloud Shell에 다음 명령어를 입력합니다.

Cloud Shell로 이동

bq show --format=prettyjson library_backup.books

출력은 다음과 비슷합니다.

{
  "creationTime": "1593194331936",
   ...
  "snapshotDefinition": {
    "baseTableReference": {
      "datasetId": "library",
      "projectId": "myProject",
      "tableId": "books"
    },
    "snapshotTime": "2020-06-26T17:58:50.815Z"
  },
  "tableReference": {
    "datasetId": "library_backup",
    "projectId": "myProject",
    "tableId": "books"
  },
  "type": "SNAPSHOT"
}

API

다음 매개변수를 사용하여 tables.get 메서드를 호출합니다.

매개변수
projectId myProject
datasetId library_backup
tableId books

응답 본문은 다음과 비슷합니다.

{
  "kind": "bigquery#table",
  "etag": "...",
  "id": "myProject:library_backup.books",
  "selfLink": "https://content-bigquery.googleapis.com/bigquery/v2/projects/myProject/datasets/library_backup/tables/books",
  "tableReference": {
    "projectId": "myProject",
    "datasetId": "library_backup",
    "tableId": "books"
  },
  "description": "books",
  "schema": {
    "fields": [
      ...
    ]
  },
  "numBytes": "637931",
  "numLongTermBytes": "0",
  "numRows": "33266",
  "creationTime": "1593194331936",
  "lastModifiedTime": "1593194331936",
  "type": "SNAPSHOT",
  "location": "US",
  "snapshotDefinition": {
    "baseTableReference": {
      "projectId": "myProject",
      "datasetId": "library",
      "tableId": "books"
    },
    "snapshotTime": "2020-06-26T17:58:50.815Z"
  }
}

다음 단계