Elenca snapshot tabella

Questo documento descrive come ottenere un elenco degli snapshot delle tabelle in un set di dati BigQuery nella console Google Cloud, eseguendo una query INFORMATION_SCHEMA.TABLE_SNAPSHOTS utilizzando la tabella bq ls oppure chiamando il comando tables.list API. Descrive inoltre come elencare tutti gli snapshot della tabella di un alla tabella di base specificata eseguendo una query sulla tabella INFORMATION_SCHEMA.TABLE_SNAPSHOTS. Questo documento è rivolto agli utenti che conoscono bene BigQuery tabelle e snapshot delle tabelle.

Autorizzazioni e ruoli

Questa sezione descrive le Autorizzazioni IAM (Identity and Access Management) è necessario elencare gli snapshot delle tabelle in un set di dati, ruoli IAM predefiniti che concedono queste autorizzazioni. Le autorizzazioni e i ruoli per la tabella di elenco gli snapshot equivalgono alle autorizzazioni e ai ruoli richiesti elencare altri tipi di tabelle.

Autorizzazioni

Per elencare gli snapshot delle tabelle in un set di dati, devi disporre della seguente autorizzazione:

Autorizzazione Risorsa
bigquery.tables.list Il set di dati che contiene gli snapshot delle tabelle.

Ruoli

I ruoli BigQuery predefiniti che forniscono sono le seguenti:

Role Risorsa
Uno dei seguenti:

bigquery.dataUser
bigquery.dataViewer
bigquery.dataEditor
bigquery.dataOwner
bigquery.admin
Il set di dati che contiene gli snapshot delle tabelle.

Elenca gli snapshot delle tabelle in un set di dati

Ottenere un elenco di snapshot delle tabelle in un set di dati è simile all'elenco di altre tipi di tabelle. Gli snapshot della tabella sono di tipo SNAPSHOT.

Puoi elencare gli snapshot delle tabelle utilizzando una delle seguenti opzioni:

Console

  1. Nella console Google Cloud, vai alla pagina BigQuery.

    Vai a BigQuery

  2. Nel riquadro Explorer, espandi i nodi del progetto e del set di dati del set di dati di cui vuoi elencare gli snapshot della tabella.

  3. Puoi identificare gli snapshot delle tabelle nel set di dati dalla loro icona.

    Icona snapshot tabella

SQL

Esegui una query sul INFORMATION_SCHEMA.TABLE_SNAPSHOTS vista:

  1. Nella console Google Cloud, vai alla pagina BigQuery.

    Vai a BigQuery

  2. Nell'editor query, inserisci la seguente istruzione:

    SELECT
      *
    FROM
      PROJECT_ID.DATASET_NAME.INFORMATION_SCHEMA.TABLE_SNAPSHOTS;
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID progetto del contenente gli snapshot da elencare.
    • DATASET_NAME: nome del set di dati che contiene gli snapshot da elencare.

  3. Fai clic su Esegui.

Per ulteriori informazioni su come eseguire le query, vedi Eseguire una query interattiva.

Il risultato è simile al seguente:

+---------------+----------------+------------------+--------------------+-------------------+-----------------+-----------------------------+
| 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

Inserisci questo comando in Cloud Shell:

Vai a Cloud Shell

bq ls \
PROJECT_ID:DATASET_NAME

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto del contenente gli snapshot da elencare.
  • DATASET_NAME: nome del set di dati che contiene gli snapshot da elencare.

L'output è simile al seguente:

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

API

Chiama il tables.list con i seguenti parametri:

Parametro Valore
projectId L'ID progetto del contenente gli snapshot da elencare.
datasetId Il nome del set di dati che contiene gli snapshot da elencare.

Elenca gli snapshot di una tabella di base specificata

Puoi elencare gli snapshot di una tabella di base specificata eseguendo una query sul INFORMATION_SCHEMA.TABLE_SNAPSHOTS visualizzazione:

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

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto del contenente gli snapshot da elencare.
  • DATASET_NAME: nome del set di dati che contiene gli snapshot da elencare.

Passaggi successivi