como marcar uma tabela do BigQuery usando o Data Catalog
Este guia de início rápido ajuda você a concluir as seguintes tarefas:
Crie um conjunto de dados e uma tabela do BigQuery.
Criar um modelo de tag com um esquema que defina cinco campos de tag de tipos diferentes. São eles:
string
,double
,boolean
,enumerated
erichtext
.Procure a entrada do Data Catalog para sua tabela.
No console do Google Cloud, crie metadados comerciais para sua entrada que incluam uma visão geral, um administrador de dados e uma tag.
O Data Catalog permite pesquisar e marcar entradas como Tabelas do BigQuery com metadados. Alguns exemplos de metadados que você pode para inclusão de tag incluem tags públicas e privadas, gestores de dados e rich text informações gerais.
Antes de começar
- Criar um projeto;
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Enable the Data Catalog and BigQuery APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Enable the Data Catalog and BigQuery APIs.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
Adicionar uma entrada de dados públicos ao seu projeto
As entradas do Data Catalog incluem recursos de dados, como um conjunto de dados do BigQuery ou um tópico do Pub/Sub.
Adicione um conjunto de dados público ao seu projeto.
No console do Google Cloud, acesse a página do BigQuery.
Na seção Explorer, clique em + ADICIONAR DADOS e selecione Conjuntos de dados públicos na lista.
No painel Marketplace, pesquise
New York taxi trips
e clique no resultado de pesquisa relevante.Clique em Ver conjunto de dados.
Criar um conjunto de dados e uma tabela
Crie um conjunto de dados.
No Console do Google Cloud, abra a página do BigQuery.
No painel Explorador, selecione o projeto em que você quer criar o conjunto de dados.
Clique no ícone
Ações e em Criar conjunto de dados.Na página Criar conjunto de dados, preencha os seguintes detalhes:
- Para o código do conjunto de dados, insira
demo_dataset
. - Em Local dos dados, selecione
us (multiple regions in United States)
. - Ative a validade da tabela e especifique o número de dias.
- Em Criptografia, mantenha a opção Chave de criptografia gerenciada pelo Google selecionada.
Clique em Criar conjunto de dados.
- Para o código do conjunto de dados, insira
Copie uma tabela acessível publicamente para
demo_dataset
.No Console do Google Cloud, abra a página do BigQuery.
No painel Explorer, pesquise as tabelas
tlc_yellow_trips
(clique em Ampliar a pesquisa para todos os projetos, se necessário) e selecione uma delas, comotlc_yellow_trips_2017
. Em seguida, clique em Copiar.No painel Copiar tabela, preencha as seguintes informações:
- Na lista suspensa Nome do projeto, selecione seu projeto.
- Na lista suspensa Nome do conjunto de dados, selecione
demo_dataset
. - Para Nome da tabela, digite
trips
e clique em Copiar.
No painel Explorer, confirme se a tabela
trips
está listada emdemo_dataset
.
Você vai adicionar as tags do Data Catalog à tabela na próxima seção.
Criar um modelo de tag público e anexar uma tag na entrada
Você precisa ser o proprietário do conjunto de dados para anexar uma tag a uma tabela nele. Para mais informações sobre tags públicas e privadas, consulte Tags públicas e privadas.
Em um modelo de tag, os campos de tag são opcionais. Você não precisa fornecer um valor para um campo ao anexar uma tag a uma entrada do Data Catalog. No entanto, se um modelo definir um campo como obrigatório, você precisará fornecer um valor para ele. Se o valor não for fornecido, um erro será gerado.
É possível usar letras minúsculas e sublinhados para definir nomes de campos. Os campos do modelo de tag criados neste exemplo são apenas campos de demonstração e não são atualizados automaticamente ou sincronizados com o BigQuery.
Console
Acesse o Dataplex > Modelos de tag.
Clique em Criar modelo de tag e insira os seguintes detalhes:
- Insira o Nome do modelo como
Demo Tag Template
. - Mantenha o local padrão.
- Mantenha a visibilidade do modelo de tag como Público.
Clique em Adicionar campo para adicionar cinco campos. Use a tabela a seguir e deixe a Descrição do campo vazia.
Nome de exibição do campo ID do campo Campo obrigatório Tipo Origem do recurso de dados source Sim String Linhas no recurso num_rows Não Duplo Tem PII has_pii Não Booleano Tipo de PII pii_type Não Enumerado Adicione os valores
EMAIL_ADDRESS
,US_SOCIAL_SECURITY_NUMBER
eNONE
.Contexto contexto Não Rich text
- Insira o Nome do modelo como
Clique em Criar.
A página Detalhes do modelo lista todas as informações sobre o modelo de tag.
Para anexar uma tag a
demo_dataset
, acesse a página de pesquisa do Dataplex.Em Escolher plataforma de pesquisa, selecione Data Catalog como o modo de pesquisa.
Na caixa de pesquisa, digite
demo_dataset
. No resultado da pesquisa, você encontra o conjunto de dadosdemo_dataset
e a tabelatrips
.Clique na tabela
trips
. A página Detalhes da tabela do BigQuery é aberta.Clique em Anexar tags.
No painel Anexar tags, insira os seguintes detalhes:
- Selecione o destino como
trips
. - Selecione o modelo de tag como
Demo Tag Template
. - Para valores de tag, insira os seguintes detalhes:
- Fonte do recurso de dados:
Copied from tlc_yellow_trips_2017
- Número de linhas no recurso de dados:
113496874
- Tem PII:
FALSE
- Tipo de PII:
NONE
- Fonte do recurso de dados:
Clique em Salvar.
Os campos de tag agora estão listados na seção Tags nos detalhes da tabela do BigQuery.
- Selecione o destino como
gcloud
Execute o comando gcloud data-catalog tag-templates create mostrado abaixo para criar um modelo de tag com os cinco campos de tag a seguir:
display_name:
Fonte do recurso de dadosid:
fonterequired:
TRUEtype:
Stringdisplay_name:
Número de linhas no recurso de dadosid:
num_rowsrequired:
FALSOtype:
Doubledisplay_name:
Tem PIIid:
has_piirequired:
FALSOtype:
Booleanodisplay_name:
Tipo de PIIid:
pii_typerequired:
FALSOtype:
Enumeradovalues:
- EMAIL_ADDRESS
- US_SOCIAL_SECURITY_NUMBER
- NENHUM
# ------------------------------- # Create a Tag Template. # ------------------------------- gcloud data-catalog tag-templates create demo_template \ --location=us-central1 \ --display-name="Demo Tag Template" \ --field=id=source,display-name="Source of data asset",type=string,required=TRUE \ --field=id=num_rows,display-name="Number of rows in the data asset",type=double \ --field=id=has_pii,display-name="Has PII",type=bool \ --field=id=pii_type,display-name="PII type",type='enum(EMAIL_ADDRESS|US_SOCIAL_SECURITY_NUMBER|NONE)' # ------------------------------- # Lookup the Data Catalog entry for the table. # ------------------------------- ENTRY_NAME=$(gcloud data-catalog entries lookup '//bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET/tables/TABLE' --format="value(name)") # ------------------------------- # Attach a Tag to the table. # ------------------------------- # Create the Tag file. cat > tag_file.json << EOF { "source": "BigQuery", "num_rows": 1000, "has_pii": true, "pii_type": "EMAIL_ADDRESS" } EOF gcloud data-catalog tags create --entry=${ENTRY_NAME} \ --tag-template=demo_template --tag-template-location=us-central1 --tag-file=tag_file.json
Go
Antes de testar este exemplo, siga as instruções de configuração do Go no Guia de início rápido do Data Catalog: como usar as bibliotecas de cliente. Para mais informações, consulte a API Data Catalog Go documentação de referência.
Para autenticar no Data Catalog, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Java
Antes de testar este exemplo, siga as instruções de configuração do Java no Guia de início rápido do Data Catalog: como usar as bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Data Catalog Java.
Para autenticar no Data Catalog, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Antes de testar este exemplo, siga as instruções de configuração do Node.js na O guia de início rápido do Data Catalog usando bibliotecas de cliente. Para mais informações, consulte a API Data Catalog Node.js documentação de referência.
Para autenticar no Data Catalog, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Antes de testar este exemplo, siga as instruções de configuração do Python na O guia de início rápido do Data Catalog usando bibliotecas de cliente. Para mais informações, consulte a API Data Catalog Python documentação de referência.
Para autenticar no Data Catalog, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
REST e LINHA DE CMD
REST
Se você não tiver acesso às bibliotecas do Cloud Client para seu idioma ou desejar testar a API usando solicitações REST, consulte os exemplos a seguir e consulte a documentação da API REST.
1. Crie um modelo de tag.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- project-id: é o ID do projeto do Google Cloud.
Método HTTP e URL:
POST https://datacatalog.googleapis.com/v1/projects/project-id/locations/region/tagTemplates?tagTemplateId=demo_tag_template
Corpo JSON da solicitação:
{ "displayName":"Demo Tag Template", "fields":{ "source":{ "displayName":"Source of data asset", "isRequired": "true", "type":{ "primitiveType":"STRING" } }, "num_rows":{ "displayName":"Number of rows in data asset", "isRequired": "false", "type":{ "primitiveType":"DOUBLE" } }, "has_pii":{ "displayName":"Has PII", "isRequired": "false", "type":{ "primitiveType":"BOOL" } }, "pii_type":{ "displayName":"PII type", "isRequired": "false", "type":{ "enumType":{ "allowedValues":[ { "displayName":"EMAIL_ADDRESS" }, { "displayName":"US_SOCIAL_SECURITY_NUMBER" }, { "displayName":"NONE" } ] } } } } }
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "name":"projects/project-id/locations/us-central1/tagTemplates/demo_tag_template", "displayName":"Demo Tag Template", "fields":{ "num_rows":{ "displayName":"Number of rows in data asset", "isRequired": "false", "type":{ "primitiveType":"DOUBLE" } }, "has_pii":{ "displayName":"Has PII", "isRequired": "false", "type":{ "primitiveType":"BOOL" } }, "pii_type":{ "displayName":"PII type", "isRequired": "false", "type":{ "enumType":{ "allowedValues":[ { "displayName":"EMAIL_ADDRESS" }, { "displayName":"NONE" }, { "displayName":"US_SOCIAL_SECURITY_NUMBER" } ] } } }, "source":{ "displayName":"Source of data asset", "isRequired":"true", "type":{ "primitiveType":"STRING" } } } }
2. Procure o Data Catalog entry-id
na tabela do BigQuery.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- project-id: ID do projeto do Google Cloud
Método HTTP e URL:
GET https://datacatalog.googleapis.com/v1/entries:lookup?linkedResource=//bigquery.googleapis.com/projects/project-id/datasets/demo_dataset/tables/trips
Corpo JSON da solicitação:
Request body is empty.
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "name": "projects/project-id/locations/US/entryGroups/@bigquery/entries/entry-id", "type": "TABLE", "schema": { "columns": [ { "type": "STRING", "description": "A code indicating the TPEP provider that provided the record. 1= ", "mode": "REQUIRED", "column": "vendor_id" }, ... ] }, "sourceSystemTimestamps": { "createTime": "2019-01-25T01:45:29.959Z", "updateTime": "2019-03-19T23:20:26.540Z" }, "linkedResource": "//bigquery.googleapis.com/projects/project-id/datasets/demo_dataset/tables/trips", "bigqueryTableSpec": { "tableSourceType": "BIGQUERY_TABLE" } }
3. Crie uma tag a partir do modelo e anexe-a à tabela do BigQuery.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- project-id: ID do projeto do Google Cloud
- entry-id: ID da entrada do Data Catalog para a tabela de viagens do conjunto de dados de demonstração (retornada nos resultados da pesquisa na etapa anterior).
Método HTTP e URL:
POST https://datacatalog.googleapis.com/v1/projects/project-id/locations/region/entryGroups/@bigquery/entries/entry-id/tags
Corpo JSON da solicitação:
{ "template":"projects/project-id/locations/us-central1/tagTemplates/demo_tag_template", "fields":{ "source":{ "stringValue":"Copied from tlc_yellow_trips_2017" }, "num_rows":{ "doubleValue":113496874 }, "has_pii":{ "boolValue":false }, "pii_type":{ "enumValue":{ "displayName":"NONE" } } } }
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "name":"projects/project-id/locations/US/entryGroups/@bigquery/entries/entry-id/tags/tag-id", "template":"projects/project-id/locations/us-central1/tagTemplates/demo_tag_template", "fields":{ "pii_type":{ "displayName":"PII type", "enumValue":{ "displayName":"NONE" } }, "has_pii":{ "displayName":"Has PII", "boolValue":false }, "source":{ "displayName":"Source of data asset", "stringValue":"Copied from tlc_yellow_trips_2017" }, "num_rows":{ "displayName":"Number of rows in data asset", "doubleValue":113496874 } }, "templateDisplayName":"Demo Tag Template" }
Defina o aspecto geral da entrada
No console do Google Cloud, é possível usar rich text para descrever uma entrada no seu projeto do Data Catalog.
Para criar uma visão geral da tabela
trips
, acesse a página de pesquisa do Dataplex.Em Escolher plataforma de pesquisa, selecione Data Catalog como o modo de pesquisa.
Na caixa de pesquisa, digite
demo_dataset
.No resultado da pesquisa, você encontra o conjunto de dados
demo_dataset
e a tabelatrips
.Clique na tabela
trips
.A página Detalhes da tabela do BigQuery é aberta.
Clique em Adicionar informações gerais e insira um texto. Além disso, é possível incluir imagens e texto formatado.
Clique em Salvar.
Adicionar um administrador de dados à entrada
No console do Google Cloud, é possível adicionar um ou mais administradores de dados a uma entrada no projeto do Data Catalog. Administrador de dados de entrada de dados pode ser contatado para solicitar mais informações sobre a entrada de dados.
Para criar uma visão geral da tabela
trips
, repita as três primeiras etapas da seção anterior.Clique no ícone Editar responsável e adicione um ou mais endereços de e-mail.
É possível adicionar um usuário com uma conta de e-mail que não seja do Google.
Clique em Salvar.
Limpar
Para evitar cobranças na conta do Google Cloud pelos recursos usados nesta página, siga estas etapas.
Exclua o projeto
O jeito mais fácil de evitar cobranças é excluindo o projeto que você criou para o tutorial.
Para excluir o projeto:
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Excluir o conjunto de dados
Se necessário, acesse a página do BigQuery.
No painel Explorer, pesquise o conjunto de dados
demo_dataset
que você criou.Clique na opção
Ações e em Excluir conjunto de dados.Confirme a ação de exclusão.
Excluir o modelo de tag
Acesse o Data Catalog > Modelos.
Selecione Modelo de tag de demonstração.
Na linha, clique na opção
Ações e em Excluir este modelo.Confirme a ação de exclusão.
A seguir
Saiba mais sobre o Data Catalog em Visão geral do Data Catalog.
Saiba mais sobre metadados técnicos e metadados comerciais.
Saiba mais sobre modelos de tag, tags públicas e tags particulares em Tags e modelos de tag.
Navegue pela Visão geral de APIs e bibliotecas de cliente.