Como visualizar rótulos

Nesta página, você aprende a visualizar rótulos nos recursos do BigQuery.

Visão geral

Para visualizar rótulos:

  • use o Console do GCP ou a IU clássica da Web do BigQuery;
  • use o comando bq show da ferramenta de linha de comando;
  • chame os métodos de API datasets.get e tables.get;
  • use bibliotecas de cliente.

Como as visualizações são tratadas como recursos de tabela, use o método tables.get para acessar as informações de rótulos de visualizações e tabelas.

Permissões necessárias

As permissões necessárias para a visualização de rótulos dependem do tipo de recurso que você acessa.

Permissões do conjunto de dados

Para acessar as informações sobre um conjunto de dados, é necessário ter, no mínimo, as permissões bigquery.datasets.get. Os papéis predefinidos do Cloud IAM a seguir incluem permissões bigquery.datasets.get:

  • bigquery.user
  • bigquery.metadataViewer
  • bigquery.dataViewer
  • bigquery.dataOwner
  • bigquery.dataEditor
  • bigquery.admin

Além disso, quando um usuário com permissões bigquery.datasets.create cria um conjunto de dados, ele recebe o acesso de bigquery.dataOwner ao conjunto. Com o acesso de bigquery.dataOwner, o usuário consegue acessar as informações sobre um conjunto de dados.

Para mais informações sobre os papéis e as permissões do Cloud IAM no BigQuery, consulte Permissões e papéis predefinidos.

Permissões de visualização e tabela

Para acessar as informações sobre tabelas ou visualizações, é necessário ter, no mínimo, permissões bigquery.tables.get. Todos os papéis predefinidos do Cloud IAM incluem permissões bigquery.tables.get, exceto bigquery.user e bigquery.jobUser.

Além disso, quando um usuário com permissões bigquery.datasets.create cria um conjunto de dados, ele recebe o acesso de bigquery.dataOwner ao conjunto. Com o acesso de bigquery.dataOwner, o usuário consegue acessar as informações sobre tabelas e visualizações em um conjunto de dados.

Para mais informações sobre os papéis e as permissões do Cloud IAM no BigQuery, consulte Permissões e papéis predefinidos.

Permissões de job

Para acessar os dados e metadados do job, é necessário ter, no mínimo, permissões bigquery.jobs.get. O papel predefinido do Cloud IAM a seguir inclui permissões bigquery.jobs.get:

  • bigquery.admin

Se você conceder a uma conta o papel bigquery.admin, o usuário poderá visualizar todos os dados do job no projeto, independentemente de quem o enviou.

As permissões bigquery.jobs.get para jobs autocriados são concedidas aos seguintes papéis: Esses usuários só podem visualizar os dados dos jobs que eles enviam:

  • bigquery.user
  • bigquery.jobUser

Para mais informações sobre papéis e permissões do Cloud IAM no BigQuery, consulte Controle de acesso.

Como visualizar rótulos de visualizações, tabelas e conjuntos de dados

Para visualizar os rótulos de um recurso, faça o seguinte:

Console

  1. No Console do GCP, selecione um conjunto de dados, tabela ou visualização. Não é possível visualizar os rótulos do job no Console do GCP.

  2. No caso dos conjuntos de dados, a página "Detalhes do conjunto de dados" é aberta automaticamente. Para tabelas e visualizações, clique em Detalhes para abrir essa página. As informações do rótulo são exibidas na tabela de informações do recurso.

    Detalhes da tabela

IU clássica

  1. Na IU da Web, selecione um conjunto de dados, tabela ou visualização. Não é possível visualizar os rótulos do job na IU clássica da Web.

  2. No caso dos conjuntos de dados, a página Detalhes do conjunto de dados é aberta automaticamente. Para tabelas e visualizações, clique em Detalhes para abrir essa página. As informações do rótulo são exibidas na tabela de informações do recurso.

CLI

Use o comando bq show com o ID do recurso. A sinalização --format pode ser usada para controlar a saída. Se o recurso estiver em um projeto diferente do projeto padrão, adicione o código do projeto neste formato: [PROJECT_ID]:[DATASET]. Para garantir legibilidade, a saída é controlada por meio da definição da sinalização --format como pretty.

bq show --format=pretty [RESOURCE_ID]

Em que [RESOURCE_ID] é um ID válido de conjunto de dados, tabela, visualização ou job.

Por exemplo:

Insira o comando a seguir para exibir rótulos de mydataset no projeto padrão.

bq show --format=pretty mydataset

O resultado será semelhante ao mostrado a seguir:

+-----------------+--------------------------------------------------------+---------------------+
|  Last modified  |                          ACLs                          |       Labels        |
+-----------------+--------------------------------------------------------+---------------------+
| 11 Jul 19:34:34 | Owners:                                                | department:shipping |
|                 |   projectOwners,                                       |                     |
|                 | Writers:                                               |                     |
|                 |   projectWriters                                       |                     |
|                 | Readers:                                               |                     |
|                 |   projectReaders                                       |                     |
+-----------------+--------------------------------------------------------+---------------------+

Insira o comando a seguir para exibir rótulos de mydataset.mytable. mydataset está em myotherproject, e não no projeto padrão.

bq show --format=pretty myotherproject:mydataset.mytable

O resultado será semelhante ao exemplo a seguir relacionado a uma tabela em cluster:

+-----------------+------------------------------+------------+-------------+-----------------+------------------------------------------------+------------------+---------+
|  Last modified  |            Schema            | Total Rows | Total Bytes |   Expiration    |               Time Partitioning                | Clustered Fields | Labels  |
+-----------------+------------------------------+------------+-------------+-----------------+------------------------------------------------+------------------+---------+
| 25 Jun 19:28:14 | |- timestamp: timestamp      | 0          | 0           | 25 Jul 19:28:14 | DAY (field: timestamp, expirationMs: 86400000) | customer_id      | org:dev |
|                 | |- customer_id: string       |            |             |                 |                                                |                  |         |
|                 | |- transaction_amount: float |            |             |                 |                                                |                  |         |
+-----------------+------------------------------+------------+-------------+-----------------+------------------------------------------------+------------------+---------+

API

Chame o método datasets.get ou tables.get. A resposta inclui todos os rótulos associados a esse recurso.

Como alternativa, também é possível usar datasets.list para visualizar os rótulos de vários conjuntos de dados ou tables.list para ver os rótulos de várias tabelas e visualizações.

Como as visualizações são tratadas como recursos de tabela, use os métodos tables.get e tables.list para ver informações do rótulo sobre visualizações e tabelas.

Go

Antes de testar este exemplo, siga as instruções de configuração do Go no Guia de início rápido do BigQuery: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API BigQuery Go.

// To run this sample, you will need to create (or reuse) a context and
// an instance of the bigquery client.  For example:
// import "cloud.google.com/go/bigquery"
// ctx := context.Background()
// client, err := bigquery.NewClient(ctx, "your-project-id")
meta, err := client.Dataset(datasetID).Metadata(ctx)
if err != nil {
	return err
}
fmt.Fprintf(w, "Dataset %s labels:\n", datasetID)
if len(meta.Labels) == 0 {
	fmt.Fprintln(w, "Dataset has no labels defined.")
	return nil
}
for k, v := range meta.Labels {
	fmt.Fprintf(w, "\t%s:%s\n", k, v)
}

Python

Antes de testar esta amostra, siga as instruções de configuração do Python no Guia de início rápido do BigQuery: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API BigQuery Python.

# from google.cloud import bigquery
# client = bigquery.Client()
# dataset_id = 'my_dataset'

dataset_ref = client.dataset(dataset_id)
dataset = client.get_dataset(dataset_ref)  # API request

# View dataset labels
print("Dataset ID: {}".format(dataset_id))
print("Labels:")
if dataset.labels:
    for label, value in dataset.labels.items():
        print("\t{}: {}".format(label, value))
else:
    print("\tDataset has no labels defined.")

Como visualizar rótulos de job

Depois que um job é enviado, os rótulos dele não são exibidos no Console do GCP nem na IU clássica da Web do BigQuery. Para ver os rótulos em um job, emita o comando bq show -j [JOB_ID] ou use a API ou as bibliotecas de cliente.

Console

Não é possível ver os rótulos do job usando o Console do GCP.

IU clássica

Não é possível ver os rótulos de job usando a IU clássica da Web do BigQuery.

CLI

Para ver os rótulos de um job de consulta usando a ferramenta de linha de comando bq, insira o comando bq show -j com o ID do job de consulta. A sinalização --format pode ser usada para controlar a saída. Por exemplo, se o ID do job de consulta for bqjob_r1234d57f78901_000023746d4q12_1, insira o comando a seguir:

bq show -j --format=pretty bqjob_r1234d57f78901_000023746d4q12_1

O esquema será semelhante a este:

+----------+---------+-----------------+----------+-------------------+-----------------+--------------+----------------------+
| Job Type |  State  |   Start Time    | Duration |    User Email     | Bytes Processed | Bytes Billed |        Labels        |
+----------+---------+-----------------+----------+-------------------+-----------------+--------------+----------------------+
| query    | SUCCESS | 03 Dec 15:00:41 | 0:00:00  | email@example.com | 255             | 10485760     | department:shipping  |
|          |         |                 |          |                   |                 |              | costcenter:logistics |
+----------+---------+-----------------+----------+-------------------+-----------------+--------------+----------------------+

API

Chame o método jobs.get. A resposta inclui todos os rótulos associados a esse recurso.

A seguir

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Precisa de ajuda? Acesse nossa página de suporte.