Veja os metadados do resumo da tabela
Este documento descreve como ver os metadados de uma cópia instantânea de uma tabela do BigQuery na consola, consultando a vista TABLE_SNAPSHOTS
da tabela INFORMATION_SCHEMA
, usando o comando bq show
ou chamando a API tables.get
. Google Cloud
Destina-se a utilizadores que conhecem as tabelas do
BigQuery
e as cópias instantâneas de tabelas.
Autorizações e funções
Esta secção descreve a autorização de gestão de identidade e acesso (IAM) de que precisa para ver os metadados de uma cópia instantânea de uma tabela e as funções de IAM predefinidas que concedem essas autorizações.
Autorizações
Para ver os metadados de um resumo de uma tabela, precisa da seguinte autorização:
Autorização | Recurso |
---|---|
bigquery.tables.get
|
O instantâneo da tabela |
Funções
As funções predefinidas do BigQuery que concedem a autorização necessária são as seguintes:
Role | Recurso |
---|---|
Qualquer uma das seguintes opções:bigquery.metadataViewer bigquery.dataViewer bigquery.dataEditor bigquery.dataOwner bigquery.admin
|
O instantâneo da tabela |
Obtenha os metadados de uma captura instantânea de uma tabela
Os metadados de um resumo de tabela são semelhantes aos metadados de uma tabela padrão, com as seguintes diferenças:
- Um campo
baseTableReference
adicional identifica a tabela base a partir da qual foi tirada a captura de ecrã. - O campo
type
tem o valorSNAPSHOT
.
Pode ver os metadados de um resumo da tabela através de uma das seguintes opções:
Consola
Na Google Cloud consola, aceda à página BigQuery.
No painel Explorador, expanda os nós do projeto e do conjunto de dados da imagem instantânea da tabela que quer analisar.
Clique no nome da captura instantânea da tabela.
No painel de vista geral apresentado, pode fazer o seguinte:
Clique no separador Esquema para ver o esquema da captura de ecrã da tabela e as etiquetas de políticas.
Clique na tabela Detalhes para ver o tamanho da imagem instantânea da tabela, a data de validade, a tabela base, a hora da imagem instantânea e outras informações.
SQL
Para ver os metadados de uma cópia instantânea de uma tabela, consulte a vista INFORMATION_SCHEMA.TABLE_SNAPSHOTS
:
Na Google Cloud consola, aceda à página BigQuery.
No editor de consultas, introduza a seguinte declaração:
SELECT * FROM PROJECT_ID.DATASET_NAME.INFORMATION_SCHEMA.TABLE_SNAPSHOTS WHERE table_name = 'SNAPSHOT_NAME';
Substitua o seguinte:
PROJECT_ID
: o ID do projeto do projeto que contém a captura de ecrã.DATASET_NAME
: o nome do conjunto de dados que contém a imagem instantânea.SNAPSHOT_NAME
: o nome do resumo.
Clique em
Executar.
Para mais informações sobre como executar consultas, consulte o artigo Execute uma consulta interativa.
bq
Introduza o seguinte comando no Cloud Shell:
bq show \ --format=prettyjson \ PROJECT_ID:DATASET_NAME.SNAPSHOT_NAME
Substitua o seguinte:
PROJECT_ID
: o ID do projeto do projeto que contém a captura de ecrã.DATASET_NAME
: o nome do conjunto de dados que contém a imagem instantânea.SNAPSHOT_NAME
: o nome do resumo.
O resultado é semelhante ao seguinte:
{ "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
Chame o método
tables.get
com os seguintes parâmetros:
Parâmetro | Valor |
---|---|
projectId |
O ID do projeto que contém o instantâneo. |
datasetId |
O nome do conjunto de dados que contém o instantâneo. |
tableId |
O nome do instantâneo. |
O corpo da resposta é semelhante ao seguinte:
{ "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" } }
O que se segue?
- Atualize a descrição, a data de validade ou a política de acesso de uma imagem instantânea de tabela.
- Elimine um instantâneo de tabela.