Tabellen-Snapshots auflisten

In diesem Dokument wird beschrieben, wie Sie eine Liste der Tabellen-Snapshots in einem BigQuery-Dataset in der Google Cloud Console abrufen. Dazu fragen Sie die Tabelle INFORMATION_SCHEMA.TABLE_SNAPSHOTS mit dem bq ls-Befehl ab oder durch Aufrufen der tables.list API. Außerdem wird beschrieben, wie Sie alle Tabellen-Snapshots einer bestimmten Basistabelle durch Abfragen der Tabelle INFORMATION_SCHEMA.TABLE_SNAPSHOTS auflisten können. Dieses Dokument richtet sich an Nutzer, die mit BigQuery-Tabellen und Tabellen-Snapshots vertraut sind.

Berechtigungen und Rollen

In diesem Abschnitt werden die IAM-Berechtigungen (Identity and Access Management) beschrieben, die Sie zum Auflisten der Tabellen-Snapshots in einem Dataset benötigen, sowie die vordefinierten IAM-Rollen, die diese Berechtigungen gewähren. Die Berechtigungen und Rollen für das Auflisten von Tabellen-Snapshots sind mit den Berechtigungen und Rollen identisch, die zum Auflisten anderer Tabellentypen erforderlich sind.

Berechtigungen

Zum Auflisten der Tabellen-Snapshots in einem Dataset benötigen Sie die folgende Berechtigung:

Berechtigung Ressource
bigquery.tables.list Das Dataset, das die Tabellen-Snapshots enthält.

Rollen

Die folgenden vordefinierten BigQuery-Rollen bieten die erforderlichen Berechtigungen:

Rolle Ressource
Beliebige von Folgendem:

bigquery.dataUser
bigquery.dataViewer
bigquery.dataEditor
bigquery.dataOwner
bigquery.admin
Das Dataset, das die Tabellen-Snapshots enthält.

Tabellen-Snapshots in einem Dataset auflisten

Das Abrufen einer Liste von Tabellen-Snapshots in einem Dataset ähnelt dem Auflisten anderer Tabellentypen. Die Tabellen-Snapshots haben den Typ SNAPSHOT.

Sie können Tabellen-Snapshots über eine der folgenden Optionen auflisten:

Console

  1. Öffnen Sie in der Google Cloud Console die Seite BigQuery.

    BigQuery aufrufen

  2. Maximieren Sie im Bereich Explorer die Projekt- und Dataset-Knoten des Datasets, dessen Tabellen-Snapshots Sie auflisten möchten.

  3. Sie können die Tabellen-Snapshots im Dataset anhand ihres Symbols identifizieren.

    Symbol für Tabellen-Snapshot

SQL

Fragen Sie die Ansicht INFORMATION_SCHEMA.TABLE_SNAPSHOTS ab:

  1. Öffnen Sie in der Google Cloud Console die Seite BigQuery.

    BigQuery aufrufen

  2. Geben Sie im Abfrageeditor die folgende Anweisung ein:

    SELECT
      *
    FROM
      PROJECT_ID.DATASET_NAME.INFORMATION_SCHEMA.TABLE_SNAPSHOTS;
    

    Dabei gilt:

    • PROJECT_ID: die Projekt-ID des Projekts, das die Snapshots enthält, die Sie auflisten möchten.
    • DATASET_NAME: der Name des Datasets, das die Snapshots enthält, die Sie auflisten möchten.

  3. Klicken Sie auf Ausführen.

Informationen zum Ausführen von Abfragen finden Sie unter Interaktive Abfrage ausführen.

Das Ergebnis sieht ungefähr so aus:

+---------------+----------------+------------------+--------------------+-------------------+-----------------+-----------------------------+
| table_catalog | table_schema   | table_name       | base_table_catalog | base_table_schema | base_table_name | snapshot_time               |
+---------------+----------------+------------------+--------------------+-------------------+-----------------+-----------------------------+
| myproject     | mydataset      | mysnapshot       | basetableproject   | basetabledataset           | basetable           | 2021-04-16 14:05:27.519 UTC |
+---------------+----------------+------------------+--------------------+-------------------+-----------------+-----------------------------+

bq

Führen Sie dazu in Cloud Shell den folgenden Befehl aus.

Zu Cloud Shell

bq ls \
PROJECT_ID:DATASET_NAME

Dabei gilt:

  • PROJECT_ID: die Projekt-ID des Projekts, das die Snapshots enthält, die Sie auflisten möchten.
  • DATASET_NAME: der Name des Datasets, das die Snapshots enthält, die Sie auflisten möchten.

Die Ausgabe sieht dann ungefähr so aus:

+-------------------------+--------+---------------------+-------------------+
|         tableId         |  Type  |       Labels        | Time Partitioning |
+-------------------------+--------+---------------------+-------------------+
| mysnapshot              |SNAPSHOT|                     |                   |
+-------------------------+--------+---------------------+-------------------+

API

Rufen Sie die Methode tables.list mit den folgenden Parametern auf:

Parameter Value
projectId Die Projekt-ID des Projekts, das die Snapshots enthält, die Sie auflisten möchten.
datasetId Der Name des Datasets, das die Snapshots enthält, die Sie auflisten möchten.

Tabellen-Snapshots einer angegebenen Basistabelle auflisten

Um die Tabellen-Snapshots einer bestimmten Basistabelle aufzulisten, müssen Sie die Ansicht INFORMATION_SCHEMA.TABLE_SNAPSHOTS abfragen:

SELECT
  *
FROM
  PROJECT_ID.DATASET_NAME.INFORMATION_SCHEMA.TABLE_SNAPSHOTS
WHERE
  base_table_name = 'books';
  

Dabei gilt:

  • PROJECT_ID: die Projekt-ID des Projekts, das die Snapshots enthält, die Sie auflisten möchten.
  • DATASET_NAME: der Name des Datasets, das die Snapshots enthält, die Sie auflisten möchten.

Nächste Schritte