テーブル スナップショットに関する情報の取得

このドキュメントでは、Google Cloud Console で、INFORMATION_SCHEMA テーブルの TABLE_SNAPSHOTS ビューをクエリするか、bq show コマンドを使用するか、tables.get API を呼び出して 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. Cloud Console で、BigQuery ページに移動します。

    BigQuery に移動

  2. [エクスプローラ] ペインで、library_backup.books テーブルのプロジェクトとデータセット ノードを展開します。

  3. [books] ペインが表示されたら、次の操作を行えます。

    • [スキーマ] タブをクリックして、テーブル スナップショットのスキーマとアクセス ポリシーを表示します。

    • [詳細] テーブルをクリックして、テーブル スナップショットのサイズ、有効期限、ベーステーブル、スナップショット時間などの情報を表示します。

SQL

次のクエリを実行します。

SELECT *
  FROM
  myproject.library_backup.INFORMATION_SCHEMA.TABLE_SNAPSHOTS

詳細については、テーブル スナップショットのメタデータをご覧ください。

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"
  }
}

次のステップ