Elenco degli snapshot delle tabelle
Questo documento descrive come ottenere un elenco degli snapshot delle tabelle in un set di dati BigQuery nella console Google Cloud , eseguendo query sulla tabella INFORMATION_SCHEMA.TABLE_SNAPSHOTS
, utilizzando il comando bq ls
o chiamando l'API tables.list
. Descrive inoltre come elencare tutti gli snapshot di tabella di una tabella di base specificata eseguendo una query sulla tabella INFORMATION_SCHEMA.TABLE_SNAPSHOTS
.
Questo documento è destinato agli utenti che hanno familiarità con le tabelle e gli snapshot delle tabelle di BigQuery.
Autorizzazioni e ruoli
Questa sezione descrive le autorizzazioni IAM (Identity and Access Management) necessarie per elencare gli snapshot delle tabelle in un set di dati e i ruoli IAM predefiniti che concedono queste autorizzazioni. Le autorizzazioni e i ruoli per elencare gli snapshot delle tabelle sono gli stessi richiesti per 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 della tabella. |
Ruoli
I ruoli BigQuery predefiniti che forniscono l'autorizzazione richiesta sono i seguenti:
Role | Risorsa |
---|---|
Uno dei seguenti: bigquery.dataUser bigquery.dataViewer bigquery.dataEditor bigquery.dataOwner bigquery.admin
|
Il set di dati che contiene gli snapshot della tabella. |
Elenca gli snapshot della tabella in un set di dati
Ottenere un elenco di snapshot di tabelle in un set di dati è simile all'elenco di altri tipi di tabelle. Gli snapshot delle tabelle hanno il tipo SNAPSHOT
.
Puoi elencare gli snapshot delle tabelle utilizzando una delle seguenti opzioni:
Console
Nella console Google Cloud , vai alla pagina BigQuery.
Nel riquadro a sinistra, fai clic su
Explorer:Se non vedi il riquadro a sinistra, fai clic su
Espandi riquadro a sinistra per aprirlo.Nel riquadro Explorer, espandi il progetto, fai clic su Set di dati e poi seleziona il set di dati che contiene gli snapshot della tabella che vuoi elencare.
Fai clic su Panoramica > Tabelle. Per trovare gli snapshot nell'elenco, controlla il valore
SNAPSHOT
nella colonna Tipo.
SQL
Esegui una query sulla
vista INFORMATION_SCHEMA.TABLE_SNAPSHOTS
:
Nella console Google Cloud , vai alla pagina BigQuery.
Nell'editor di query, inserisci la seguente istruzione:
SELECT * FROM PROJECT_ID.DATASET_NAME.INFORMATION_SCHEMA.TABLE_SNAPSHOTS;
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto del progetto che contiene gli snapshot che vuoi elencare.DATASET_NAME
: il nome del set di dati che contiene gli snapshot che vuoi elencare.
Fai clic su
Esegui.
Per saperne di più su come eseguire le query, consulta 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 il seguente comando in Cloud Shell:
bq ls \ PROJECT_ID:DATASET_NAME
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto del progetto che contiene gli snapshot che vuoi elencare.DATASET_NAME
: il nome del set di dati che contiene gli snapshot che vuoi elencare.
L'output è simile al seguente:
+-------------------------+--------+---------------------+-------------------+ | tableId | Type | Labels | Time Partitioning | +-------------------------+--------+---------------------+-------------------+ | mysnapshot |SNAPSHOT| | | +-------------------------+--------+---------------------+-------------------+
API
Chiama il
metodo tables.list
con i seguenti parametri:
Parametro | Valore |
---|---|
projectId |
L'ID progetto del progetto che contiene gli snapshot che vuoi elencare. |
datasetId |
Il nome del set di dati che contiene gli snapshot che vuoi elencare. |
Elenca gli snapshot della tabella di una tabella di base specificata
Puoi elencare gli snapshot della tabella di una tabella di base specificata eseguendo una query sulla vista
INFORMATION_SCHEMA.TABLE_SNAPSHOTS
:
SELECT * FROM PROJECT_ID.DATASET_NAME.INFORMATION_SCHEMA.TABLE_SNAPSHOTS WHERE base_table_name = 'books';
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto del progetto che contiene gli snapshot che vuoi elencare.DATASET_NAME
: il nome del set di dati che contiene gli snapshot che vuoi elencare.
Passaggi successivi
- Recuperare informazioni su uno snapshot della tabella.
- Aggiorna la descrizione, la data di scadenza o la policy di accesso di uno snapshot della tabella.
- Elimina uno snapshot della tabella.