Visualizzare i metadati dell'istantanea della tabella
Questo documento descrive come visualizzare i metadati di uno snapshot della tabella BigQuery nella console Google Cloud, eseguendo una query sulla visualizzazione TABLE_SNAPSHOTS
della tabella INFORMATION_SCHEMA
, utilizzando il comando bq show
o chiamando l'API tables.get
.
È rivolto agli utenti che hanno dimestichezza con le
tabelle e gli
snapshot delle tabelle di BigQuery.
Autorizzazioni e ruoli
Questa sezione descrive l'autorizzazione Identity and Access Management (IAM) necessaria per visualizzare i metadati di uno snapshot di tabella e i ruoli IAM predefiniti che concedono queste autorizzazioni.
Autorizzazioni
Per visualizzare i metadati di uno snapshot di tabella, devi disporre della seguente autorizzazione:
Autorizzazione | Risorsa |
---|---|
bigquery.tables.get
|
Lo snapshot della tabella |
Ruoli
I ruoli BigQuery predefiniti che forniscono l'autorizzazione richiesta sono i seguenti:
Role | Risorsa |
---|---|
Uno dei seguenti:bigquery.metadataViewer bigquery.dataViewer bigquery.dataEditor bigquery.dataOwner bigquery.admin
|
Lo snapshot della tabella |
Recuperare i metadati di uno snapshot di tabella
I metadati di uno snapshot di tabella sono simili a quelli di una tabella standard, con le seguenti differenze:
- Un campo
baseTableReference
aggiuntivo identifica la tabella di base da cui è stato acquisito lo snapshot. - Il campo
type
ha il valoreSNAPSHOT
.
Puoi visualizzare i metadati di un'istantanea di tabella utilizzando una delle seguenti opzioni:
Console
Nella console Google Cloud, vai alla pagina BigQuery.
Nel riquadro Explorer, espandi i nodi del progetto e del set di dati dello snapshot della tabella che vuoi esaminare.
Fai clic sul nome dell'istantanea della tabella.
Nel riquadro istantanea visualizzato, puoi:
Fai clic sulla scheda Schema per visualizzare lo schema e i tag delle norme dell'istantanea della tabella.
Fai clic sulla tabella Dettagli per visualizzare le dimensioni, la scadenza, la tabella di base, l'ora dello snapshot e altre informazioni dello snapshot della tabella.
SQL
Per visualizzare i metadati di un'istantanea della tabella, esegui una query sulla
visualizzazione 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 WHERE table_name = 'SNAPSHOT_NAME';
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto che contiene lo snapshot.DATASET_NAME
: il nome del set di dati che contiene lo snapshot.SNAPSHOT_NAME
: il nome dello snapshot.
Fai clic su
Esegui.
Per ulteriori informazioni su come eseguire query, consulta Eseguire una query interattiva.
bq
Inserisci il seguente comando in Cloud Shell:
bq show \ --format=prettyjson \ PROJECT_ID:DATASET_NAME.SNAPSHOT_NAME
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto che contiene lo snapshot.DATASET_NAME
: il nome del set di dati che contiene lo snapshot.SNAPSHOT_NAME
: il nome dello snapshot.
L'output è simile al seguente:
{ "creationTime": "1593194331936", ... "snapshotDefinition": { "baseTableReference": { "datasetId": "myDataset", "projectId": "myProject", "tableId": "mytable" }, "snapshotTime": "2020-06-26T17:58:50.815Z" }, "tableReference": { "datasetId": "otherDataset", "projectId": "myProject", "tableId": "mySnapshot" }, "type": "SNAPSHOT" }
API
Chiama il metodo
tables.get
con i seguenti parametri:
Parametro | Valore |
---|---|
projectId |
L'ID del progetto contenente lo snapshot. |
datasetId |
Il nome del set di dati contenente lo snapshot. |
tableId |
Il nome dello snapshot. |
Il corpo della risposta è simile al seguente:
{ "kind": "bigquery#table", "etag": "...", "id": "myProject:myDataset.mySnapshot", "selfLink": "https://content-bigquery.googleapis.com/bigquery/v2/projects/myProject/datasets/myDataset/tables/mySnapshot", "tableReference": { "projectId": "myProject", "datasetId": "myDataset", "tableId": "mySnapshot" }, "description": "...", "schema": { "fields": [ ... ] }, "numBytes": "637931", "numLongTermBytes": "0", "numRows": "33266", "creationTime": "1593194331936", "lastModifiedTime": "1593194331936", "type": "SNAPSHOT", "location": "US", "snapshotDefinition": { "baseTableReference": { "projectId": "myProject", "datasetId": "otherDataset", "tableId": "myTable" }, "snapshotTime": "2020-06-26T17:58:50.815Z" } }
Passaggi successivi
- Aggiorna la descrizione, la data di scadenza o il criterio di accesso di uno snapshot di tabella.
- Elimina uno snapshot della tabella.