Etiquete tabelas, vistas e conjuntos de dados

Este documento descreve como usar etiquetas para aplicar condicionalmente políticas de gestão de identidade e de acesso (IAM) a tabelas, vistas e conjuntos de dados do BigQuery.

Também pode usar etiquetas para negar condicionalmente o acesso com políticas de IAM a tabelas, vistas e conjuntos de dados do BigQuery (pré-visualização). Para mais informações, consulte as Políticas de recusa.

Uma etiqueta é um par de chave-valor que pode anexar diretamente a uma tabela, uma vista ou um conjunto de dados, ou um par de chave-valor que uma tabela, uma vista ou um conjunto de dados pode herdar de outrosGoogle Cloud recursos. Pode aplicar condicionalmente políticas com base no facto de um recurso ter ou não uma etiqueta específica. Por exemplo, pode conceder condicionalmente a função de visualizador de dados do BigQuery a um principal em qualquer conjunto de dados com a etiqueta environment:dev.

Para mais informações sobre a utilização de etiquetas na hierarquia de recursos, consulte o artigo Vista geral das etiquetas. Google Cloud

Para conceder autorizações a muitos recursos relacionados do BigQuery ao mesmo tempo, incluindo recursos que ainda não existem, considere usar condições do IAM.

Limitações

  • As etiquetas de tabelas não são suportadas em tabelas do BigQuery Omni, tabelas em conjuntos de dados ocultos nem tabelas temporárias. As etiquetas de conjuntos de dados não são suportadas em conjuntos de dados do BigQuery Omni. Além disso, as consultas entre regiões no BigQuery Omni não usam etiquetas durante as verificações de controlo de acesso de tabelas noutras regiões.

  • Pode anexar um máximo de 50 etiquetas a uma tabela ou a um conjunto de dados.

  • Todas as tabelas referenciadas numa consulta com carateres universais têm de ter exatamente o mesmo conjunto de chaves e valores de etiquetas.

  • Os utilizadores com acesso condicional a um conjunto de dados ou a uma tabela não podem modificar as autorizações desse recurso através da consola Google Cloud . As modificações de autorizações só são suportadas através da ferramenta bq e da API BigQuery.

  • Alguns serviços fora do BigQuery não conseguem validar corretamente as condições das etiquetas de IAM. Se a condição de etiqueta for positiva, o que significa que um utilizador recebe uma função num recurso apenas se esse recurso tiver uma etiqueta específica, o acesso ao recurso é recusado, independentemente das etiquetas anexadas ao mesmo. Se a condição da etiqueta for negativa, o que significa que é concedida uma função a um utilizador num recurso apenas se esse recurso não tiver uma etiqueta específica, a condição da etiqueta não é verificada.

    Por exemplo, o Data Catalog não pode validar as condições das etiquetas de IAM em conjuntos de dados e tabelas do BigQuery. Suponhamos que existe uma política de IAM condicional que atribui a um estagiário a função de visualizador de dados do BigQuery em conjuntos de dados com a etiqueta employee_type=intern. Uma vez que esta é uma condição de etiqueta positiva, o estagiário não pode ver conjuntos de dados pesquisando no catálogo de dados, mesmo que esses conjuntos de dados tenham a etiqueta employee_type=intern. Se a condição da etiqueta tivesse sido alterada para uma condição negativa, de modo que o estagiário só pudesse ver conjuntos de dados que não tivessem a etiqueta employee_type=intern, a verificação seria totalmente ignorada, e o estagiário poderia ver os conjuntos de dados aos quais normalmente não teria acesso no BigQuery.

Funções necessárias

Tem de conceder funções de IAM que dão aos utilizadores as autorizações necessárias para realizar cada tarefa neste documento.

As seguintes funções de IAM predefinidas incluem todas as autorizações do BigQuery necessárias:

  • Proprietário de dados do BigQuery (roles/bigquery.dataOwner)
  • Administrador do BigQuery (roles/bigquery.admin)

As autorizações do Resource Manager para adicionar e remover etiquetas estão incluídas na função de utilizador da etiqueta (roles/resourcemanager.tagUser).

Autorizações necessárias

Para usar etiquetas no BigQuery, precisa das seguintes autorizações:

Operação Interfaces do BigQuery (API, CLI, consola) e Terraform API Cloud Resource Manager ou gcloud
Anexe uma etiqueta a uma tabela ou a uma vista
  • bigquery.tables.createTagBinding na tabela ou na vista
  • resourcemanager.tagValueBindings.create no valor da etiqueta
  • bigquery.tables.create para anexar uma etiqueta quando cria uma tabela ou uma vista
  • Autorização bigquery.tables.update para anexar uma etiqueta ao atualizar uma tabela ou uma vista
  • bigquery.tables.createTagBinding na tabela ou na vista
  • resourcemanager.tagValueBindings.create no valor da etiqueta
Remova uma etiqueta de uma tabela ou uma vista
  • bigquery.tables.deleteTagBinding na tabela ou na vista
  • resourcemanager.tagValueBindings.delete no valor da etiqueta
  • bigquery.tables.update autorização para remover uma etiqueta ao atualizar uma tabela ou uma vista
  • bigquery.tables.deleteTagBinding na tabela ou na vista
  • resourcemanager.tagValueBindings.delete no valor da etiqueta
Anexe uma etiqueta a um conjunto de dados
  • bigquery.datasets.createTagBinding no conjunto de dados
  • resourcemanager.tagValueBindings.create no valor da etiqueta
  • Autorização bigquery.datasets.create para anexar uma etiqueta ao criar um conjunto de dados
  • Autorização bigquery.datasets.update para anexar uma etiqueta ao atualizar um conjunto de dados
  • bigquery.datasets.createTagBinding no conjunto de dados
  • resourcemanager.tagValueBindings.create no valor da etiqueta
Remova uma etiqueta de um conjunto de dados
  • bigquery.datasets.deleteTagBinding no conjunto de dados
  • resourcemanager.tagValueBindings.delete no valor da etiqueta
  • bigquery.datasets.update para remover uma etiqueta quando atualiza um conjunto de dados
  • bigquery.datasets.deleteTagBinding no conjunto de dados
  • resourcemanager.tagValueBindings.delete no valor da etiqueta

Para listar chaves de etiquetas e valores de chaves na Google Cloud consola, precisa das seguintes autorizações:

  • Para listar as chaves de etiquetas associadas a uma organização principal ou a um projeto, precisa da autorização resourcemanager.tagKeys.list no nível principal da chave de etiqueta e da autorização resourcemanager.tagKeys.get para cada chave de etiqueta. Para ver a lista de chaves de etiquetas na consola do BigQuery, clique no nome do conjunto de dados e, de seguida, clique em Editar detalhes, ou clique no nome da tabela ou da vista e, de seguida, clique em Detalhes > Editar detalhes.

  • Para listar os valores das etiquetas de chaves associadas a uma organização principal ou a um projeto, precisa da autorização resourcemanager.tagValues.list ao nível principal do valor da etiqueta e da autorização resourcemanager.tagValues.get para cada valor da etiqueta. Para ver a lista de valores-chave das etiquetas na consola do BigQuery, clique no nome do conjunto de dados e, de seguida, clique em Editar detalhes, ou clique no nome da tabela ou da vista e, de seguida, clique em Detalhes > Editar detalhes.

Para usar etiquetas na API Cloud Resource Manager ou no gcloud, precisa das seguintes autorizações:

  • Para listar as etiquetas anexadas a uma tabela ou uma vista com a API Cloud Resource Manager ou a CLI gcloud, precisa da autorização do IAM bigquery.tables.listTagBindings.
  • Para listar as etiquetas eficazes de uma tabela ou uma vista, precisa da autorização de IAM bigquery.tables.listEffectiveTags.
  • Para listar as etiquetas anexadas a um conjunto de dados com a API Cloud Resource Manager ou a CLI gcloud, precisa da autorização do IAM bigquery.datasets.listTagBindings.
  • Para listar as etiquetas eficazes para um conjunto de dados, precisa da autorização de IAM.bigquery.datasets.listEffectiveTags

Crie chaves e valores de etiquetas

Pode criar uma etiqueta antes de a anexar a um recurso do BigQuery ou pode criar uma etiqueta manualmente quando cria o recurso através daGoogle Cloud consola.

Para ver informações sobre como criar chaves de etiquetas e valores de etiquetas, consulte os artigos Criar uma etiqueta e Adicionar valores de etiquetas na documentação do Resource Manager.

Etiquete conjuntos de dados

As secções seguintes descrevem como anexar etiquetas a conjuntos de dados novos e existentes, listar etiquetas anexadas a um conjunto de dados e desanexar etiquetas de um conjunto de dados.

Anexe etiquetas quando criar um novo conjunto de dados

Depois de criar uma etiqueta, pode anexá-la a um novo conjunto de dados do BigQuery. Só pode anexar um valor de etiqueta a um conjunto de dados para qualquer chave de etiqueta. Pode anexar um máximo de 50 etiquetas a um conjunto de dados.

Consola

  1. Na Google Cloud consola, aceda à página BigQuery.

    Aceda ao BigQuery

  2. No painel Explorador, selecione o projeto onde quer criar o conjunto de dados.

  3. Clique em Ver ações > Criar conjunto de dados.

  4. Introduza as informações do novo conjunto de dados. Para mais detalhes, consulte o artigo Crie conjuntos de dados.

  5. Expanda a secção Etiquetas.

    1. Para aplicar uma etiqueta existente, faça o seguinte:

      1. Clique na seta de menu pendente junto a Selecionar âmbito e escolha Âmbito atual: Selecionar organização atual ou Selecionar projeto atual.

        Em alternativa, clique em Selecionar âmbito para pesquisar um recurso ou ver uma lista de recursos atuais.

      2. Para Chave 1 e Valor 1, escolha os valores adequados nas listas.

    2. Para introduzir manualmente uma nova etiqueta, faça o seguinte:

      1. Clique na seta de menu pendente junto a Selecionar um âmbito e escolha Introduzir IDs manualmente > Organização, Projeto ou Etiquetas.

      2. Se estiver a criar uma etiqueta para o seu projeto ou organização, no diálogo, introduza o PROJECT_ID ou o ORGANIZATION_ID e, em seguida, clique em Guardar.

      3. Para Chave 1 e Valor 1, escolha os valores adequados nas listas.

    3. Opcional: para adicionar mais etiquetas à tabela, clique em Adicionar etiqueta e siga os passos anteriores.

  6. Clique em Criar conjunto de dados.

SQL

Use a declaração CREATE SCHEMA.

  1. Na Google Cloud consola, aceda à página BigQuery.

    Aceda ao BigQuery

  2. No editor de consultas, introduza a seguinte declaração:

    CREATE SCHEMA PROJECT_ID.DATASET_ID
    OPTIONS (
      tags = [('TAG_KEY_1', 'TAG_VALUE_1'), ('TAG_KEY_2', 'TAG_VALUE_2')];)

    Substitua o seguinte:

    • PROJECT_ID: o ID do seu projeto.
    • DATASET_ID: o ID do conjunto de dados que está a criar.
    • TAG_KEY_1: o nome da chave com espaço de nomes que quer definir como a primeira etiqueta no conjunto de dados, por exemplo, 'my-project/env' ou '556741164180/department'.
    • TAG_VALUE_1: o nome abreviado do valor da etiqueta, por exemplo, 'prod' ou 'sales'.
    • TAG_KEY_2: o nome da chave com espaço de nomes para a segunda etiqueta.
    • TAG_VALUE_2: o nome abreviado do valor da segunda etiqueta.

  3. Clique em Executar.

Para mais informações sobre como executar consultas, consulte o artigo Execute uma consulta interativa.

bq

Use o bq mk --dataset comando com a flag --add_tags:

bq mk --dataset \
    --add_tags=TAG \
    PROJECT_ID:DATASET_ID

Substitua o seguinte:

  • TAG: a etiqueta que está a anexar ao novo conjunto de dados. As várias etiquetas estão separadas por vírgulas. Por exemplo, 556741164180/env:prod,myProject/department:sales. Cada etiqueta tem de ter o nome da chave com espaço de nomes e o nome abreviado do valor.
  • PROJECT_ID: o ID do projeto onde está a criar um conjunto de dados.
  • DATASET_ID: o ID do novo conjunto de dados.

Terraform

Use o recurso google_bigquery_dataset.

Para se autenticar no BigQuery, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.

O exemplo seguinte cria um conjunto de dados denominado my_dataset e, em seguida, anexa-lhe etiquetas preenchendo o campo resource_tags:


# Create tag keys and values
data "google_project" "default" {}

resource "google_tags_tag_key" "env_tag_key" {
  parent     = "projects/${data.google_project.default.project_id}"
  short_name = "env2"
}

resource "google_tags_tag_key" "department_tag_key" {
  parent     = "projects/${data.google_project.default.project_id}"
  short_name = "department2"
}

resource "google_tags_tag_value" "env_tag_value" {
  parent     = "tagKeys/${google_tags_tag_key.env_tag_key.name}"
  short_name = "prod"
}

resource "google_tags_tag_value" "department_tag_value" {
  parent     = "tagKeys/${google_tags_tag_key.department_tag_key.name}"
  short_name = "sales"
}

# Create a dataset
resource "google_bigquery_dataset" "default" {
  dataset_id                      = "my_dataset"
  default_partition_expiration_ms = 2592000000  # 30 days
  default_table_expiration_ms     = 31536000000 # 365 days
  description                     = "dataset description"
  location                        = "US"
  max_time_travel_hours           = 96 # 4 days

  # Attach tags to the dataset
  resource_tags = {
    (google_tags_tag_key.env_tag_key.namespaced_name) : google_tags_tag_value.env_tag_value.short_name,
    (google_tags_tag_key.department_tag_key.namespaced_name) : google_tags_tag_value.department_tag_value.short_name
  }
}

Para aplicar a configuração do Terraform num Google Cloud projeto, conclua os passos nas secções seguintes.

Prepare o Cloud Shell

  1. Inicie o Cloud Shell.
  2. Defina o Google Cloud projeto predefinido onde quer aplicar as suas configurações do Terraform.

    Só tem de executar este comando uma vez por projeto e pode executá-lo em qualquer diretório.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    As variáveis de ambiente são substituídas se definir valores explícitos no ficheiro de configuração do Terraform.

Prepare o diretório

Cada ficheiro de configuração do Terraform tem de ter o seu próprio diretório (também denominado módulo raiz).

  1. No Cloud Shell, crie um diretório e um novo ficheiro nesse diretório. O nome do ficheiro tem de ter a extensão .tf, por exemplo, main.tf. Neste tutorial, o ficheiro é denominado main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. Se estiver a seguir um tutorial, pode copiar o código de exemplo em cada secção ou passo.

    Copie o exemplo de código para o ficheiro main.tf criado recentemente.

    Opcionalmente, copie o código do GitHub. Isto é recomendado quando o fragmento do Terraform faz parte de uma solução completa.

  3. Reveja e modifique os parâmetros de exemplo para aplicar ao seu ambiente.
  4. Guarde as alterações.
  5. Inicialize o Terraform. Só tem de fazer isto uma vez por diretório.
    terraform init

    Opcionalmente, para usar a versão mais recente do fornecedor Google, inclua a opção -upgrade:

    terraform init -upgrade

Aplique as alterações

  1. Reveja a configuração e verifique se os recursos que o Terraform vai criar ou atualizar correspondem às suas expetativas:
    terraform plan

    Faça as correções necessárias à configuração.

  2. Aplique a configuração do Terraform executando o seguinte comando e introduzindo yes no comando:
    terraform apply

    Aguarde até que o Terraform apresente a mensagem "Apply complete!" (Aplicação concluída!).

  3. Abra o seu Google Cloud projeto para ver os resultados. Na Google Cloud consola, navegue para os seus recursos na IU para se certificar de que o Terraform os criou ou atualizou.

API

Chame o método datasets.insert e adicione as etiquetas ao campo resource_tags.

Anexe etiquetas a um conjunto de dados existente

Depois de criar uma etiqueta, pode anexá-la a um conjunto de dados existente. Só pode anexar um valor de etiqueta a um conjunto de dados para qualquer chave de etiqueta específica.

Consola

  1. Na Google Cloud consola, aceda à página BigQuery.

    Aceda ao BigQuery

  2. No painel Explorador, expanda o projeto e selecione um conjunto de dados.

  3. Na secção Informações do conjunto de dados, clique em Editar detalhes.

  4. Expanda a secção Etiquetas.

    1. Para aplicar uma etiqueta existente, faça o seguinte:

      1. Clique na seta de menu pendente junto a Selecionar âmbito e escolha Âmbito atual: Selecionar organização atual ou Selecionar projeto atual.

        Em alternativa, clique em Selecionar âmbito para pesquisar um recurso ou ver uma lista de recursos atuais.

      2. Para Chave 1 e Valor 1, escolha os valores adequados nas listas.

    2. Para introduzir manualmente uma nova etiqueta, faça o seguinte:

      1. Clique na seta de menu pendente junto a Selecionar um âmbito e escolha Introduzir IDs manualmente > Organização, Projeto ou Etiquetas.

      2. Se estiver a criar uma etiqueta para o seu projeto ou organização, no diálogo, introduza o PROJECT_ID ou o ORGANIZATION_ID e, em seguida, clique em Guardar.

      3. Para Chave 1 e Valor 1, escolha os valores adequados nas listas.

    3. Opcional: para adicionar mais etiquetas à tabela, clique em Adicionar etiqueta e siga os passos anteriores.

  5. Clique em Guardar.

SQL

Use a declaração ALTER SCHEMA SET OPTIONS.

O exemplo seguinte substitui todas as etiquetas de um conjunto de dados existente.

  1. Na Google Cloud consola, aceda à página BigQuery.

    Aceda ao BigQuery

  2. No editor de consultas, introduza a seguinte declaração:

    ALTER SCHEMA PROJECT_ID.DATASET_ID
    SET OPTIONS (
      tags = [('TAG_KEY_1', 'TAG_VALUE_1'), ('TAG_KEY_2', 'TAG_VALUE_2')];)

    Substitua o seguinte:

    • PROJECT_ID: o ID do seu projeto.
    • DATASET_ID: o ID do conjunto de dados que contém a tabela.
    • TABLE_ID: o nome da tabela que está a etiquetar.
    • TAG_KEY_1: o nome da chave com espaço de nomes que quer definir como a primeira etiqueta na tabela, por exemplo, 'my-project/env' ou '556741164180/department'.
    • TAG_VALUE_1: o nome abreviado do valor da etiqueta, por exemplo, 'prod' ou 'sales'.
    • TAG_KEY_2: o nome da chave com espaço de nomes para a segunda etiqueta.
    • TAG_VALUE_2: o nome abreviado do valor da segunda etiqueta.

  3. Clique em Executar.

Para mais informações sobre como executar consultas, consulte o artigo Execute uma consulta interativa.

O exemplo seguinte usa o operador += para anexar etiquetas a um conjunto de dados sem substituir as etiquetas existentes. Se uma etiqueta existente tiver a mesma chave, essa etiqueta é substituída.

  1. Na Google Cloud consola, aceda à página BigQuery.

    Aceda ao BigQuery

  2. No editor de consultas, introduza a seguinte declaração:

    ALTER SCHEMA PROJECT_ID.DATASET_ID
    SET OPTIONS (
      tags += [('TAG_KEY_1', 'TAG_VALUE_1'), ('TAG_KEY_2', 'TAG_VALUE_2')];)

    Substitua o seguinte:

    • PROJECT_ID: o ID do seu projeto.
    • DATASET_ID: o ID do conjunto de dados que contém a tabela.
    • TABLE_ID: o nome da tabela que está a etiquetar.
    • TAG_KEY_1: o nome da chave com espaço de nomes que quer definir como a primeira etiqueta na tabela, por exemplo, 'my-project/env' ou '556741164180/department'.
    • TAG_VALUE_1: o nome abreviado do valor da etiqueta, por exemplo, 'prod' ou 'sales'.
    • TAG_KEY_2: o nome da chave com espaço de nomes para a segunda etiqueta.
    • TAG_VALUE_2: o nome abreviado do valor da segunda etiqueta.

  3. Clique em Executar.

Para mais informações sobre como executar consultas, consulte o artigo Execute uma consulta interativa.

bq

Use o bq update comando com a flag --add_tags:

bq update \
    --add_tags=TAG \
    PROJECT_ID:DATASET_ID

Substitua o seguinte:

  • TAG: a etiqueta que está a anexar ao conjunto de dados. As várias etiquetas estão separadas por vírgulas. Por exemplo, 556741164180/env:prod,myProject/department:sales. Cada etiqueta tem de ter o nome da chave com espaço de nomes e o nome abreviado do valor.
  • PROJECT_ID: o ID do projeto onde o conjunto de dados existente está localizado.
  • DATASET_ID: o ID do conjunto de dados existente.

gcloud

Para anexar uma etiqueta a um conjunto de dados através da linha de comandos, crie um recurso de associação de etiquetas através do comando gcloud resource-manager tags bindings create:

gcloud resource-manager tags bindings create \
    --tag-value=TAG_VALUE_NAME \
    --parent=RESOURCE_ID \
    --location=LOCATION

Substitua o seguinte:

  • TAG_VALUE_NAME: o ID permanente ou o nome com espaço de nomes do valor da etiqueta a anexar, como tagValues/4567890123 ou 1234567/my_tag_key/my_tag_value.
  • RESOURCE_ID: o ID completo do conjunto de dados, incluindo o nome do domínio da API (//bigquery.googleapis.com/), para identificar o tipo de recurso. Por exemplo, //bigquery.googleapis.com/projects/my_project/datasets/my_dataset.
  • LOCATION: a localização do seu conjunto de dados.

Terraform

Adicione etiquetas ao campo resource_tags do conjunto de dados e, de seguida, aplique a configuração atualizada através do recurso google_bigquery_dataset. Para mais informações, consulte o exemplo do Terraform em Anexe etiquetas quando criar um novo conjunto de dados.

API

Chame o método datasets.get para obter o recurso de conjunto de dados, incluindo o campo resource_tags. Adicione as suas etiquetas ao campo resource_tags e transmita o recurso do conjunto de dados atualizado novamente através do método datasets.update.

Liste as etiquetas anexadas a um conjunto de dados

Os passos seguintes fornecem uma lista de associações de etiquetas anexadas diretamente a um conjunto de dados. Estes métodos não devolvem etiquetas herdadas de recursos principais.

Consola

  1. Na Google Cloud consola, aceda à página BigQuery.

    Aceda ao BigQuery

  2. No painel Explorador, expanda o projeto e selecione um conjunto de dados.

    As etiquetas aparecem na secção Informações do conjunto de dados.

bq

Para listar as etiquetas anexadas a um conjunto de dados, use o comando bq show.

bq show PROJECT_ID:DATASET_ID

Substitua o seguinte:

  • PROJECT_ID: o ID do projeto que contém o seu conjunto de dados.
  • DATASET_ID: o ID do conjunto de dados para o qual quer listar as etiquetas.

gcloud

Para obter uma lista de associações de etiquetas anexadas a um recurso, use o comando gcloud resource-manager tags bindings list:

gcloud resource-manager tags bindings list \
    --parent=RESOURCE_ID \
    --location=LOCATION

Substitua o seguinte:

  • RESOURCE_ID: o ID completo do conjunto de dados, incluindo o nome do domínio da API (//bigquery.googleapis.com/) para identificar o tipo de recurso. Por exemplo, //bigquery.googleapis.com/projects/my_project/datasets/my_dataset.

  • LOCATION: a localização do seu conjunto de dados.

O resultado é semelhante ao seguinte:

name: tagBindings/%2F%2Fbigquery.googleapis.com%2Fprojects%2Fmy_project%2Fdatasets%2Fmy_dataset/tagValues/4567890123
parent: //bigquery.googleapis.com/projects/my_project/datasets/my_dataset
tagValue: tagValues/4567890123

Terraform

Use o comando terraform state show para listar os atributos do conjunto de dados, incluindo o campo resource_tags. Execute este comando no diretório onde o ficheiro de configuração do Terraform do conjunto de dados foi executado.

terraform state show google_bigquery_dataset.default

API

Chame o método datasets.get para obter o recurso do conjunto de dados. O recurso do conjunto de dados inclui etiquetas anexadas ao conjunto de dados no campo resource_tags.

Visualizações

Use a vista INFORMATION_SCHEMA.SCHEMATA_OPTIONS.

Por exemplo, a consulta seguinte mostra todas as etiquetas anexadas a todos os conjuntos de dados numa região. Esta consulta devolve uma tabela com colunas que incluem schema_name (os nomes dos conjuntos de dados), option_name (sempre 'tags'), object_type (sempre ARRAY<STRUCT<STRING, STRING>>) e option_value, que contém matrizes de objetos STRUCT que representam etiquetas associadas a cada conjunto de dados. Para conjuntos de dados sem etiquetas atribuídas, a coluna option_value devolve uma matriz vazia.

SELECT * from region-REGION.INFORMATION_SCHEMA.SCHEMATA_OPTIONS
WHERE option_name='tags'

Substitua o seguinte:

  • REGION: a região onde os seus conjuntos de dados estão localizados.

Desassocie etiquetas de um conjunto de dados

Pode desassociar uma etiqueta de um recurso eliminando o recurso de associação de etiquetas. Se estiver a eliminar uma etiqueta, tem de desassociá-la do conjunto de dados antes de a eliminar. Para mais informações, consulte o artigo Eliminar etiquetas.

Consola

  1. Na Google Cloud consola, aceda à página BigQuery.

    Aceda ao BigQuery

  2. No painel Explorador, expanda o projeto e selecione um conjunto de dados.

  3. Na secção Informações do conjunto de dados, clique em Editar detalhes.

  4. Na secção Etiquetas, clique em Eliminar item junto à etiqueta que quer eliminar.

  5. Clique em Guardar.

SQL

Use a declaração ALTER SCHEMA SET OPTIONS.

O exemplo seguinte desassocia etiquetas de um conjunto de dados através do operador -=. Para desassociar todas as etiquetas de um conjunto de dados, pode especificar tags=NULL ou tags=[].

  1. Na Google Cloud consola, aceda à página BigQuery.

    Aceda ao BigQuery

  2. No editor de consultas, introduza a seguinte declaração:

    ALTER TABLE PROJECT_ID.DATASET_ID.TABLE_ID
    SET OPTIONS (
      tags -= [('TAG_KEY_1', 'TAG_VALUE_1'), ('TAG_KEY_2', 'TAG_VALUE_2')];)

    Substitua o seguinte:

    • PROJECT_ID: o ID do seu projeto.
    • DATASET_ID: o ID do conjunto de dados que contém a tabela.
    • TABLE_ID: o nome da tabela da qual está a desassociar as etiquetas.
    • TAG_KEY_1: o nome da chave com espaço de nomes da primeira etiqueta que quer desassociar, por exemplo, 'my-project/env' ou '556741164180/department'.
    • TAG_VALUE_1: o nome abreviado do valor da etiqueta que quer desassociar, por exemplo, 'prod' ou 'sales'.
    • TAG_KEY_2: o nome da chave com espaço de nomes da segunda etiqueta que está a desassociar.
    • TAG_VALUE_2: o nome abreviado do valor da segunda etiqueta que está a desassociar.

  3. Clique em Executar.

Para mais informações sobre como executar consultas, consulte o artigo Execute uma consulta interativa.

bq

Use o bq update comando com a flag --remove_tags:

bq update \
    --remove_tags=REMOVED_TAG \
    PROJECT_ID:DATASET_ID

Substitua o seguinte:

  • REMOVED_TAG: a etiqueta que está a remover do conjunto de dados. As várias etiquetas estão separadas por vírgulas. Aceita apenas chaves sem pares de valores. Por exemplo, 556741164180/env,myProject/department. Cada etiqueta tem de ter o nome da chave com espaço de nomes.
  • PROJECT_ID: o ID do projeto que contém o seu conjunto de dados.
  • DATASET_ID: o ID do conjunto de dados do qual desanexar as etiquetas.

Em alternativa, se quiser remover todas as etiquetas de um conjunto de dados, use o comando bq update com a flag --clear_all_tags:

bq update \
    --clear_all_tags
    PROJECT_ID:DATASET_ID

gcloud

Para desassociar uma etiqueta de um conjunto de dados através da linha de comandos, elimine a associação da etiqueta através do comando gcloud resource-manager tags bindings delete:

gcloud resource-manager tags bindings delete \
    --tag-value=TAG_VALUE_NAME \
    --parent=RESOURCE_ID \
    --location=LOCATION

Substitua o seguinte:

  • TAG_VALUE_NAME: o ID permanente ou o nome com espaço de nomes do valor da etiqueta a desassociar, como tagValues/4567890123 ou 1234567/my_tag_key/my_tag_value.
  • RESOURCE_ID: o ID completo do conjunto de dados, incluindo o nome do domínio da API (//bigquery.googleapis.com/) para identificar o tipo de recurso. Por exemplo, //bigquery.googleapis.com/projects/my_project/datasets/my_dataset.
  • LOCATION: a localização do seu conjunto de dados.

Terraform

Remova as etiquetas do campo resource_tags do conjunto de dados e, em seguida, aplique a configuração atualizada através do recurso google_bigquery_dataset.

API

Chame o método datasets.get para obter o recurso de conjunto de dados, incluindo o campo resource_tags. Remova as etiquetas do campo resource_tags e transmita novamente o recurso do conjunto de dados atualizado através do método datasets.update.

Etiquete tabelas

As secções seguintes descrevem como anexar etiquetas a tabelas novas e existentes, listar etiquetas anexadas a uma tabela e desanexar etiquetas de uma tabela.

Anexe etiquetas quando criar uma nova tabela

Depois de criar uma etiqueta, pode anexá-la a uma nova tabela. Só pode anexar um valor de etiqueta a uma tabela para qualquer chave de etiqueta específica. Pode anexar um máximo de 50 etiquetas a uma tabela.

Consola

  1. Na Google Cloud consola, aceda à página BigQuery.

    Aceda ao BigQuery

  2. No painel Explorador, expanda o projeto e, de seguida, selecione um conjunto de dados.

  3. Na secção Informações do conjunto de dados, clique em Criar tabela.

  4. Introduza as informações da nova tabela. Para mais detalhes, consulte o artigo Crie e use tabelas.

  5. Expanda a secção Etiquetas.

    1. Para aplicar uma etiqueta existente, faça o seguinte:

      1. Clique na seta de menu pendente junto a Selecionar âmbito e escolha Âmbito atual: Selecionar organização atual ou Selecionar projeto atual.

        Em alternativa, clique em Selecionar âmbito para pesquisar um recurso ou ver uma lista de recursos atuais.

      2. Para Chave 1 e Valor 1, escolha os valores adequados nas listas.

    2. Para introduzir manualmente uma nova etiqueta, faça o seguinte:

      1. Clique na seta de menu pendente junto a Selecionar um âmbito e escolha Introduzir IDs manualmente > Organização, Projeto ou Etiquetas.

      2. Se estiver a criar uma etiqueta para o seu projeto ou organização, no diálogo, introduza o PROJECT_ID ou o ORGANIZATION_ID e, em seguida, clique em Guardar.

      3. Para Chave 1 e Valor 1, escolha os valores adequados nas listas.

    3. Opcional: para adicionar mais etiquetas à tabela, clique em Adicionar etiqueta e siga os passos anteriores.

  6. Clique em Criar tabela.

SQL

Use a declaração CREATE TABLE.

  1. Na Google Cloud consola, aceda à página BigQuery.

    Aceda ao BigQuery

  2. No editor de consultas, introduza a seguinte declaração:

    CREATE TABLE PROJECT_ID.DATASET_ID.TABLE_ID
    OPTIONS (
      tags = [('TAG_KEY_1', 'TAG_VALUE_1'), ('TAG_KEY_2', 'TAG_VALUE_2')];)

    Substitua o seguinte:

    • PROJECT_ID: o ID do seu projeto.
    • DATASET_ID: o ID do conjunto de dados onde está a criar a tabela.
    • TABLE_ID: o nome da nova tabela.
    • TAG_KEY_1: o nome da chave com espaço de nomes que quer definir como a primeira etiqueta na tabela, por exemplo, 'my-project/env' ou '556741164180/department'.
    • TAG_VALUE_1: o nome abreviado do valor da etiqueta, por exemplo, 'prod' ou 'sales'.
    • TAG_KEY_2: o nome da chave com espaço de nomes para a segunda etiqueta.
    • TAG_VALUE_2: o nome abreviado do valor da segunda etiqueta.

  3. Clique em Executar.

Para mais informações sobre como executar consultas, consulte o artigo Execute uma consulta interativa.

bq

Use o bq mk --table comando com a flag --add_tags:

bq mk --table \
    --schema=SCHEMA \
    --add_tags=TAG \
    PROJECT_ID:DATASET_ID.TABLE_ID

Substitua o seguinte:

  • SCHEMA: a definição do esquema inline.
  • TAG: a etiqueta que está a anexar à nova tabela. As várias etiquetas estão separadas por vírgulas. Por exemplo, 556741164180/env:prod,myProject/department:sales. Cada etiqueta tem de ter o nome da chave com espaço de nomes e o nome abreviado do valor.
  • PROJECT_ID: o ID do projeto onde está a criar uma tabela.
  • DATASET_ID: o ID do conjunto de dados onde está a criar uma tabela.
  • TABLE_ID: o ID da nova tabela.

Terraform

Use o recurso google_bigquery_table.

Para se autenticar no BigQuery, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para bibliotecas de cliente.

O exemplo seguinte cria uma tabela denominada mytable e, em seguida, anexa-lhe etiquetas preenchendo o campo resource_tags:


# Create tag keys and values
data "google_project" "default" {}

resource "google_tags_tag_key" "env_tag_key" {
  parent     = "projects/${data.google_project.default.project_id}"
  short_name = "env3"
}

resource "google_tags_tag_key" "department_tag_key" {
  parent     = "projects/${data.google_project.default.project_id}"
  short_name = "department3"
}

resource "google_tags_tag_value" "env_tag_value" {
  parent     = "tagKeys/${google_tags_tag_key.env_tag_key.name}"
  short_name = "prod"
}

resource "google_tags_tag_value" "department_tag_value" {
  parent     = "tagKeys/${google_tags_tag_key.department_tag_key.name}"
  short_name = "sales"
}

# Create a dataset
resource "google_bigquery_dataset" "default" {
  dataset_id                      = "MyDataset"
  default_partition_expiration_ms = 2592000000  # 30 days
  default_table_expiration_ms     = 31536000000 # 365 days
  description                     = "dataset description"
  location                        = "US"
  max_time_travel_hours           = 96 # 4 days
}

# Create a table
resource "google_bigquery_table" "default" {
  dataset_id          = google_bigquery_dataset.default.dataset_id
  table_id            = "mytable"
  description         = "table description"
  deletion_protection = false # set to "true" in production

  # Attach tags to the table
  resource_tags = {
    (google_tags_tag_key.env_tag_key.namespaced_name) : google_tags_tag_value.env_tag_value.short_name,
    (google_tags_tag_key.department_tag_key.namespaced_name) : google_tags_tag_value.department_tag_value.short_name
  }
}

Para aplicar a configuração do Terraform num Google Cloud projeto, conclua os passos nas secções seguintes.

Prepare o Cloud Shell

  1. Inicie o Cloud Shell.
  2. Defina o Google Cloud projeto predefinido onde quer aplicar as suas configurações do Terraform.

    Só tem de executar este comando uma vez por projeto e pode executá-lo em qualquer diretório.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    As variáveis de ambiente são substituídas se definir valores explícitos no ficheiro de configuração do Terraform.

Prepare o diretório

Cada ficheiro de configuração do Terraform tem de ter o seu próprio diretório (também denominado módulo raiz).

  1. No Cloud Shell, crie um diretório e um novo ficheiro nesse diretório. O nome do ficheiro tem de ter a extensão .tf, por exemplo, main.tf. Neste tutorial, o ficheiro é denominado main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. Se estiver a seguir um tutorial, pode copiar o código de exemplo em cada secção ou passo.

    Copie o exemplo de código para o ficheiro main.tf criado recentemente.

    Opcionalmente, copie o código do GitHub. Isto é recomendado quando o fragmento do Terraform faz parte de uma solução completa.

  3. Reveja e modifique os parâmetros de exemplo para aplicar ao seu ambiente.
  4. Guarde as alterações.
  5. Inicialize o Terraform. Só tem de fazer isto uma vez por diretório.
    terraform init

    Opcionalmente, para usar a versão mais recente do fornecedor Google, inclua a opção -upgrade:

    terraform init -upgrade

Aplique as alterações

  1. Reveja a configuração e verifique se os recursos que o Terraform vai criar ou atualizar correspondem às suas expetativas:
    terraform plan

    Faça as correções necessárias à configuração.

  2. Aplique a configuração do Terraform executando o seguinte comando e introduzindo yes no comando:
    terraform apply

    Aguarde até que o Terraform apresente a mensagem "Apply complete!" (Aplicação concluída!).

  3. Abra o seu Google Cloud projeto para ver os resultados. Na Google Cloud consola, navegue para os seus recursos na IU para se certificar de que o Terraform os criou ou atualizou.

API

Chame o método tables.insert com um recurso de tabela definido. Inclua as etiquetas no campo resource_tags.

Anexe etiquetas a uma tabela existente

Depois de criar uma etiqueta, pode anexá-la a uma tabela existente. Só pode anexar um valor de etiqueta a uma tabela para qualquer chave de etiqueta específica.

Consola

  1. Na Google Cloud consola, aceda à página BigQuery.

    Aceda ao BigQuery

  2. No painel Explorador, expanda o projeto e o conjunto de dados e, de seguida, selecione uma tabela.

  3. Clique no separador Detalhes e, de seguida, clique em Editar detalhes.

  4. Expanda a secção Etiquetas.

    1. Para aplicar uma etiqueta existente, faça o seguinte:

      1. Clique na seta de menu pendente junto a Selecionar âmbito e escolha Âmbito atual: Selecionar organização atual ou Selecionar projeto atual.

        Em alternativa, clique em Selecionar âmbito para pesquisar um recurso ou ver uma lista de recursos atuais.

      2. Para Chave 1 e Valor 1, escolha os valores adequados nas listas.

    2. Para introduzir manualmente uma nova etiqueta, faça o seguinte:

      1. Clique na seta de menu pendente junto a Selecionar um âmbito e escolha Introduzir IDs manualmente > Organização, Projeto ou Etiquetas.

      2. Se estiver a criar uma etiqueta para o seu projeto ou organização, no diálogo, introduza o PROJECT_ID ou o ORGANIZATION_ID e, em seguida, clique em Guardar.

      3. Para Chave 1 e Valor 1, escolha os valores adequados nas listas.

    3. Opcional: para adicionar mais etiquetas à tabela, clique em Adicionar etiqueta e siga os passos anteriores.

  5. Clique em Guardar.

SQL

Use a declaração ALTER TABLE SET OPTIONS.

O exemplo seguinte substitui todas as etiquetas de uma tabela existente.

  1. Na Google Cloud consola, aceda à página BigQuery.

    Aceda ao BigQuery

  2. No editor de consultas, introduza a seguinte declaração:

    ALTER TABLE PROJECT_ID.DATASET_ID.TABLE_ID
    SET OPTIONS (
      tags = [('TAG_KEY_1', 'TAG_VALUE_1'), ('TAG_KEY_2', 'TAG_VALUE_2')];)

    Substitua o seguinte:

    • PROJECT_ID: o ID do seu projeto.
    • DATASET_ID: o ID do conjunto de dados que contém a tabela.
    • TABLE_ID: o nome da tabela que está a etiquetar.
    • TAG_KEY_1: o nome da chave com espaço de nomes que quer definir como a primeira etiqueta na tabela, por exemplo, 'my-project/env' ou '556741164180/department'.
    • TAG_VALUE_1: o nome abreviado do valor da etiqueta, por exemplo, 'prod' ou 'sales'.
    • TAG_KEY_2: o nome da chave com espaço de nomes para a segunda etiqueta.
    • TAG_VALUE_2: o nome abreviado do valor da segunda etiqueta.

  3. Clique em Executar.

Para mais informações sobre como executar consultas, consulte o artigo Execute uma consulta interativa.

O exemplo seguinte usa o operador += para anexar uma etiqueta a uma tabela sem substituir as etiquetas existentes. Se uma etiqueta existente tiver a mesma chave, essa etiqueta é substituída.

  1. Na Google Cloud consola, aceda à página BigQuery.

    Aceda ao BigQuery

  2. No editor de consultas, introduza a seguinte declaração:

    ALTER TABLE PROJECT_ID.DATASET_ID.TABLE_ID
    SET OPTIONS (
      tags += [('TAG_KEY_1', 'TAG_VALUE_1'), ('TAG_KEY_2', 'TAG_VALUE_2')];)

    Substitua o seguinte:

    • PROJECT_ID: o ID do seu projeto.
    • DATASET_ID: o ID do conjunto de dados que contém a tabela.
    • TABLE_ID: o nome da tabela que está a etiquetar.
    • TAG_KEY_1: o nome da chave com espaço de nomes que quer definir como a primeira etiqueta na tabela, por exemplo, 'my-project/env' ou '556741164180/department'.
    • TAG_VALUE_1: o nome abreviado do valor da etiqueta, por exemplo, 'prod' ou 'sales'.
    • TAG_KEY_2: o nome da chave com espaço de nomes para a segunda etiqueta.
    • TAG_VALUE_2: o nome abreviado do valor da segunda etiqueta.

  3. Clique em Executar.

Para mais informações sobre como executar consultas, consulte o artigo Execute uma consulta interativa.

bq

Use o bq update comando com a flag --add_tags:

bq update \
    --add_tags=TAG \
    PROJECT_ID:DATASET_ID.TABLE_ID

Substitua o seguinte:

  • TAG: a etiqueta que está a anexar à tabela. As várias etiquetas estão separadas por vírgulas. Por exemplo, 556741164180/env:prod,myProject/department:sales. Cada etiqueta tem de ter o nome da chave com espaço de nomes e o nome abreviado do valor.
  • PROJECT_ID: o ID do projeto que contém a sua tabela.
  • DATASET_ID: o ID do conjunto de dados que contém a sua tabela.
  • TABLE_ID: o ID da tabela que está a atualizar.

gcloud

Para anexar uma etiqueta a uma tabela através da linha de comandos, crie um recurso de associação de etiquetas através do comando gcloud resource-manager tags bindings create:

gcloud resource-manager tags bindings create \
    --tag-value=TAG_VALUE_NAME \
    --parent=RESOURCE_ID \
    --location=LOCATION

Substitua o seguinte:

  • TAG_VALUE_NAME: o ID permanente ou o nome com espaço de nomes do valor da etiqueta a anexar, como tagValues/4567890123 ou 1234567/my_tag_key/my_tag_value.
  • RESOURCE_ID: o ID completo da tabela, incluindo o nome do domínio da API (//bigquery.googleapis.com/) para identificar o tipo de recurso. Por exemplo, //bigquery.googleapis.com/projects/my_project/datasets/my_dataset/tables/my_table
  • LOCATION: a localização da sua mesa.

Terraform

Adicione etiquetas ao campo resource_tags da tabela e, em seguida, aplique a configuração atualizada através do recurso google_bigquery_table. Para mais informações, consulte o exemplo do Terraform em Anexe etiquetas quando criar uma nova tabela.

API

Chame o método tables.update com um recurso de tabela definido. Inclua as etiquetas no campo resource_tags.

Listar etiquetas anexadas a uma tabela

Pode listar as etiquetas anexadas diretamente a uma tabela. Este processo não apresenta etiquetas herdadas de recursos principais.

Consola

  1. Na Google Cloud consola, aceda à página BigQuery.

    Aceda ao BigQuery

  2. No painel Explorador, expanda o projeto e o conjunto de dados e, de seguida, selecione uma tabela.

    As etiquetas são visíveis no separador Detalhes.

bq

Use o comando bq show e procure a coluna tags. Se não existirem etiquetas na tabela, a coluna tags não é apresentada.

bq show \
    PROJECT_ID:DATASET_ID.TABLE_ID

Substitua o seguinte:

  • PROJECT_ID: o ID do projeto que contém a sua tabela.
  • DATASET_ID: o ID do conjunto de dados que contém a sua tabela.
  • TABLE_ID: o ID da sua tabela.

gcloud

Para obter uma lista de associações de etiquetas anexadas a um recurso, use o comando gcloud resource-manager tags bindings list:

gcloud resource-manager tags bindings list \
    --parent=RESOURCE_ID \
    --location=LOCATION

Substitua o seguinte:

  • RESOURCE_ID: o ID completo da tabela, incluindo o nome do domínio da API (//bigquery.googleapis.com/) para identificar o tipo de recurso. Por exemplo, //bigquery.googleapis.com/projects/my_project/datasets/my_dataset/tables/my_table.

  • LOCATION: a localização do seu conjunto de dados.

O resultado é semelhante ao seguinte:

name: tagBindings/%2F%2Fbigquery.googleapis.com%2Fprojects%2Fmy_project%2Fdatasets%2Fmy_dataset/tagValues/4567890123
parent: //bigquery.googleapis.com/projects/my_project/datasets/my_dataset
tagValue: tagValues/4567890123

Terraform

Use o comando terraform state show para listar os atributos da tabela, incluindo o campo resource_tags. Execute este comando no diretório onde o ficheiro de configuração do Terraform da tabela foi executado.

terraform state show google_bigquery_table.default

API

Chame o método tables.get com um recurso de tabela definido e procure o campo resource_tags.

Visualizações

Use a vista INFORMATION_SCHEMA.TABLE_OPTIONS.

Por exemplo, a consulta seguinte mostra todas as etiquetas anexadas a todas as tabelas num conjunto de dados. Esta consulta devolve uma tabela com colunas que incluem schema_name (o nome do conjunto de dados), option_name (sempre 'tags'), object_type (sempre ARRAY<STRUCT<STRING, STRING>>) e option_value, que contém matrizes de objetos STRUCT que representam etiquetas associadas a cada conjunto de dados. Para tabelas sem etiquetas atribuídas, a coluna option_value devolve uma matriz vazia.

SELECT * from DATASET_ID.INFORMATION_SCHEMA.TABLE_OPTIONS
WHERE option_name='tags'

Substitua DATASET_ID pelo ID do conjunto de dados que contém a sua tabela.

Desassocie etiquetas de uma tabela

Pode remover uma associação de etiqueta de uma tabela eliminando a associação de etiqueta. Se estiver a eliminar uma etiqueta, tem de desassociá-la da tabela antes de a eliminar. Para mais informações, consulte o artigo Eliminar etiquetas.

Consola

  1. Na Google Cloud consola, aceda à página BigQuery.

    Aceda ao BigQuery

  2. No painel Explorador, expanda o projeto e o conjunto de dados e, de seguida, selecione uma tabela.

  3. Clique no separador Detalhes e, de seguida, clique em Editar detalhes.

  4. Na secção Etiquetas, clique em Eliminar item junto à etiqueta que quer eliminar.

  5. Clique em Guardar.

SQL

Use a declaração ALTER TABLE SET OPTIONS.

O exemplo seguinte desassocia etiquetas de uma tabela através do operador -=. Para desassociar todas as etiquetas de uma tabela, pode especificar tags=NULL ou tags=[].

  1. Na Google Cloud consola, aceda à página BigQuery.

    Aceda ao BigQuery

  2. No editor de consultas, introduza a seguinte declaração:

    ALTER TABLE PROJECT_ID.DATASET_ID.TABLE_ID
    SET OPTIONS (
      tags -= [('TAG_KEY_1', 'TAG_VALUE_1'), ('TAG_KEY_2', 'TAG_VALUE_2')];)

    Substitua o seguinte:

    • PROJECT_ID: o ID do seu projeto.
    • DATASET_ID: o ID do conjunto de dados que contém a tabela.
    • TABLE_ID: o nome da tabela da qual está a desassociar as etiquetas.
    • TAG_KEY_1: o nome da chave com espaço de nomes da primeira etiqueta que quer desassociar, por exemplo, 'my-project/env' ou '556741164180/department'.
    • TAG_VALUE_1: o nome abreviado do valor da etiqueta que quer desassociar, por exemplo, 'prod' ou 'sales'.
    • TAG_KEY_2: o nome da chave com espaço de nomes da segunda etiqueta que está a desassociar.
    • TAG_VALUE_2: o nome abreviado do valor da segunda etiqueta que está a desassociar.

  3. Clique em Executar.

Para mais informações sobre como executar consultas, consulte o artigo Execute uma consulta interativa.

bq

Para remover algumas etiquetas de uma tabela, use o comando bq update com a flag --remove_tags:

bq update \
    --remove_tags=TAG_KEYS \
    PROJECT_ID:DATASET_ID.TABLE_ID

Substitua o seguinte:

  • TAG_KEYS: as chaves das etiquetas que está a desassociar da tabela, separadas por vírgulas. Por exemplo, 556741164180/env,myProject/department. Cada chave de etiqueta tem de ter o nome da chave com espaço de nomes.
  • PROJECT_ID: o ID do projeto que contém a sua tabela.
  • DATASET_ID: o ID do conjunto de dados que contém a sua tabela.
  • TABLE_ID: o ID da tabela que está a atualizar.

Para remover todas as etiquetas de uma tabela, use o comando bq update com a flag --clear_all_tags:

bq update \
    --clear_all_tags \
    PROJECT_ID:DATASET_ID.TABLE_ID

gcloud

Para remover uma associação de etiquetas de uma tabela através da linha de comandos, elimine a associação de etiquetas através do comando gcloud resource-manager tags bindings delete:

gcloud resource-manager tags bindings delete \
    --tag-value=TAG_VALUE_NAME \
    --parent=RESOURCE_ID \
    --location=LOCATION

Substitua o seguinte:

  • TAG_VALUE_NAME: o ID permanente ou o nome com espaço de nomes do valor da etiqueta a eliminar, como tagValues/4567890123 ou 1234567/my_tag_key/my_tag_value.
  • RESOURCE_ID: o ID completo da tabela, incluindo o nome do domínio da API (//bigquery.googleapis.com/) para identificar o tipo de recurso. Por exemplo, //bigquery.googleapis.com/projects/my_project/datasets/my_dataset/tables/my_table.
  • LOCATION: a localização do seu conjunto de dados.

Terraform

Remova as etiquetas do campo resource_tags da tabela e, em seguida, aplique a configuração atualizada através do recurso google_bigquery_table.

API

Chame o método tables.update com um recurso de tabela definido e remova as etiquetas no campo resource_tags. Para remover todas as etiquetas, remova o campo resource_tags.

Etiquete outros recursos semelhantes a tabelas

Da mesma forma, pode etiquetar vistas do BigQuery, vistas materializadas, clones e instantâneos.

Elimine etiquetas

Não pode eliminar uma etiqueta se esta for referenciada por uma tabela, uma vista ou um conjunto de dados. Deve desassociar todos os recursos de associação de etiquetas existentes antes de eliminar a chave ou o valor da etiqueta. Para eliminar chaves de etiquetas e valores de etiquetas, consulte o artigo Eliminar etiquetas.

Exemplo

Suponhamos que é administrador de uma organização. Os seus analistas de dados são todos membros do grupo analysts@example.com, que tem a função do IAM de visualizador de dados do BigQuery no projeto userData. É contratado um estagiário de análise de dados e, de acordo com a política da empresa, só deve ter autorização para ver o conjunto de dados anonymousData no projeto userData. Pode controlar o acesso através de etiquetas.

  1. Crie uma etiqueta com a chave employee_type e o valor intern:

    Exemplo de criação de valores e chaves de etiquetas.

  2. Na Google Cloud consola, aceda à página IAM.

    Aceda ao IAM

  3. Localize a linha que contém o estagiário cujo acesso ao conjunto de dados quer restringir e clique em Editar principal nessa linha.

  4. No menu Função, selecione Visualizador de dados do BigQuery.

  5. Clique em Adicionar condição.

  6. Nos campos Título e Descrição, introduza valores que descrevam a condição da etiqueta IAM que quer criar.

  7. No separador Criador de condições, clique em Adicionar.

  8. No menu Tipo de condição, selecione Recurso e, de seguida, Etiqueta.

  9. No menu Operador, selecione tem valor.

  10. No campo Caminho do valor, introduza o caminho do valor da etiqueta no formato ORGANIZATION/TAG_KEY/TAG_VALUE. Por exemplo, example.org/employee_type/intern.

    Exemplo de uma condição da IAM que usa etiquetas.

    Esta condição da etiqueta IAM restringe o acesso do estagiário a conjuntos de dados que tenham a etiqueta intern.

  11. Para guardar a condição da etiqueta, clique em Guardar.

  12. Para guardar todas as alterações feitas no painel Editar autorizações, clique em Guardar.

  13. Para anexar o valor da etiqueta intern ao conjunto de dados anonymousData, use a linha de comandos para executar o comando gcloud resource-manager tags bindings create. Por exemplo:

    gcloud resource-manager tags bindings create \
        --tag-value=tagValues/4567890123 \
        --parent=//bigquery.googleapis.com/projects/userData/datasets/anonymousData \
        --location=US
    

O que se segue?