Guia de início rápido sobre como incluir tags em tabelas

Neste guia de início rápido, você:

  1. Crie um conjunto de dados do BigQuery e copie os dados de táxi público para uma nova tabela no conjunto de dados.
  2. Crie um modelo de tag com um esquema que defina quatro atributos de tag de tipos distintos: string, double, boolean e enumerated).
  3. Procure a entrada do Data Catalog para sua tabela.
  4. Anexe a tag à sua tabela.

Antes de começar

  1. Configure o projeto:

    1. Faça login na sua conta do Google.

      Se você ainda não tiver uma, inscreva-se.

    2. No Console do Cloud, na página do seletor de projetos, selecione ou crie um projeto do Cloud.

      Acessar a página do seletor de projetos

    3. Ative as APIs Data Catalog and BigQuery.

      Ative as APIs

    4. Instale e inicialize o SDK do Cloud..

  2. Crie um conjunto de dados. Você deve ser o proprietário do conjunto de dados para anexar uma tag a uma tabela no conjunto de dados, como mostrado neste guia de início rápido.

    1. Acesse o BigQuery no Google Cloud Console.
    2. No painel de navegação esquerdo, clique no nome do projeto e, em seguida, clique em CREATE DATASET.
    3. Na caixa de diálogo Criar conjunto de dados:
      • Insira "demo_dataset" como o código do conjunto de dados.
      • Para Localização dos dados, aceitar o padrão localização, que define o local do conjunto de dados como US multi-region.
      • Em Validade dos dados padrão, escolha uma das seguintes opções:
        • Nunca: (padrão) as tabelas criadas no conjunto de dados nunca são excluídas automaticamente. Você precisa excluí-las manualmente.
        • Número de dias após a criação da tabela: qualquer tabela criada no conjunto de dados é excluída após os dias especificados a partir do momento da criação. Esse valor será aplicado se você não definir uma validade durante a criação da tabela; Criar conjunto de dados
      • Clique em Criar conjunto de dados. Observação: você não pode adicionar uma descrição ou um rótulo ao criar um conjunto de dados usando o Console do Google Cloud. Depois que o conjunto de dados for criado, você poderá adicionar uma descrição e adicionar um marcador.
  3. Copie uma tabela pública de táxi de Nova York para seu demo_dataset.

    1. Do BigQuery no Google Cloud Console, no projeto bigquery-public-data, selecione o conjunto de dados new_york_taxi_trips e selecione uma das tabelas tlc_yellow_trips, como tlc_yellow_trips_2017. Clique em COPIAR TABELA para abrir o painel Table Details:trips.
    2. Na seção "Destino" da caixa de diálogo Copiar tabela, selecione seu projeto e seu "demo_dataset". Insira "viagens" "para o nome da tabela e clique em COPIAR.
    3. Confirme se a tabela trips está listada em seu demo_dataset.
      Você adicionará as tags do Data Catalog à tabela na próxima seção.

Criar um modelo de tag e anexar a tag à sua tabela

Console

É possível criar um modelo de tag a partir da IU do Data Catalog no Console do Google Cloud.

  1. Selecione "Criar modelo de tag" para abrir a página Criar modelo. "Preencha o formulário de modelo para definir um "Modelo de tag de demonstração".
    1. ID do modelo: demo_tag_template
    2. Nome de exibição do modelo: Demo Tag Template
    3. Projeto: selecione seu projeto
  2. Em seguida, crie quatro atributos de tag (também chamados de "campos" de tag). Clique em "Adicionar atributo" para abrir a caixa de diálogo Novo atributo. Crie quatro atributos com os valores listados abaixo. Observe que o atributo "source" define um atributo de tag obrigatório.
      • ID do atributo: source
      • Tornar este atributo obrigatório: Checked
      • Nome de exibição do atributo: Source of data asset
      • Tipo: String
      • Clique em Concluir.
      • ID do atributo: num_rows
      • Tornar este atributo obrigatório: Not checked
      • Nome de exibição do atributo: Number of rows in the data asset
      • Tipo: Double
      • Clique em Concluir.
      • ID do atributo: has_pii
      • Tornar este atributo obrigatório: Not checked
      • Nome de exibição do atributo: Has PII
      • Tipo: Boolean
      • Clique em Concluir.
      • ID do atributo: pii_type
      • Tornar este atributo obrigatório: Not checked
      • Nome de exibição do atributo: PII type
      • Tipo: Enumerated
        Adicione três valores:
        1. E-MAIL
        2. CPF/CNPJ
        3. NONE
      • Clique em Concluir.

    O formulário de modelo de tag completo deve listar os quatro atributos de tag:

    Clique em CRIAR. A página Modelo de tag do Catálogo de dados exibe os detalhes e os atributos do modelo.

  3. Para anexar uma tag a uma tabela no conjunto de dados, abra a IU do Catálogo de dados, insira "demo_dataset" na caixa "Pesquisa" e clique em Pesquisar.
  4. As tabelas demo_dataset e trips que você copiou no conjunto de dados são exibidas nos resultados da pesquisa. Clique no link trips.
  5. A página Detalhes da entrada é aberta. Clique em Anexar tag.
  6. Na caixa de diálogo "Anexar tag, deixe o campo "Anexar a" definido como "Tabela, "e selecione o ""Modelo de tag de demonstração" em seu projeto. Em seguida, insira ou selecione os seguintes valores para cada atributo de tag. Observe que você deve fornecer um valor para o atributo "source" obrigatório. Se necessário, altere "2017" para mostrar o ano de origem da tag tlc_yellow_trips copiada para o conjunto de dados:
    1. source
      Copied from tlc_yellow_trips_2017
      
    2. num_rows
      113496874
      
    3. pii_type
      Select "NONE"
      
    4. has_pii
      Select "false"
      

    Clique em Save. Os atributos da tag estão listados na página Detalhes da entrada.

Comando gcloud

Execute o comando gcloud data-catalog tag-templates create mostrado abaixo para criar um modelo de tag com os quatro campos de tag a seguir (também chamados de "atributos"):

  1. display_name: Fonte do recurso de dados
    id: fonte
    required: TRUE
    type: String
  2. display_name: Número de linhas no recurso de dados
    id: num_rows
    required: FALSO
    type: Double
  3. display_name: Tem PII
    id: has_pii
    required: FALSO
    type: Booleano
  4. display_name: Tipo de PII
    id: pii_type
    required: FALSO
    type: Enumerado
    values:
    1. E-MAIL
    2. CPF/CNPJ
    3. NONE
# -------------------------------
# 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|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"
  }
EOF

gcloud data-catalog tags create --entry=${ENTRY_NAME} \
    --tag-template=demo_template --tag-template-location=us-central1 --tag-file=tag_file.json

Python

  1. Instalar a biblioteca cliente
  2. Configurar as credenciais padrão do aplicativo
  3. Execute o código
    # -------------------------------
    # Import required modules.
    # -------------------------------
    from google.cloud import datacatalog_v1
    
    # -------------------------------
    # Set your Google Cloud Platform project ID.
    # -------------------------------
    project_id = PROJECT
    
    # -------------------------------
    # Currently, Data Catalog stores metadata in the
    # us-central1 region.
    # -------------------------------
    location = 'us-central1'
    
    # -------------------------------
    # Use Application Default Credentials to create a new
    # Data Catalog client. GOOGLE_APPLICATION_CREDENTIALS
    # environment variable must be set with the location
    # of a service account key file.
    # -------------------------------
    datacatalog = datacatalog_v1.DataCatalogClient()
    
    # -------------------------------
    # Create a Tag Template.
    # -------------------------------
    tag_template = datacatalog_v1.types.TagTemplate()
    
    tag_template.display_name = 'Demo Tag Template'
    
    tag_template.fields['source'].display_name = 'Source of data asset'
    tag_template.fields['source'].type.primitive_type = \
        datacatalog_v1.enums.FieldType.PrimitiveType.STRING.value
    
    tag_template.fields['num_rows'].display_name = 'Number of rows in data asset'
    tag_template.fields['num_rows'].type.primitive_type = \
        datacatalog_v1.enums.FieldType.PrimitiveType.DOUBLE.value
    
    tag_template.fields['has_pii'].display_name = 'Has PII'
    tag_template.fields['has_pii'].type.primitive_type = \
        datacatalog_v1.enums.FieldType.PrimitiveType.BOOL.value
    
    tag_template.fields['pii_type'].display_name = 'PII type'
    tag_template.fields['pii_type'].type.enum_type\
        .allowed_values.add().display_name = 'EMAIL'
    tag_template.fields['pii_type'].type.enum_type\
        .allowed_values.add().display_name = 'SOCIAL SECURITY NUMBER'
    tag_template.fields['pii_type'].type.enum_type\
        .allowed_values.add().display_name = 'NONE'
    
    expected_template_name = datacatalog_v1.DataCatalogClient\
        .tag_template_path(project_id, location, 'demo_tag_template')
    
    # Delete any pre-existing Template with the same name.
    try:
        datacatalog.delete_tag_template(name=expected_template_name, force=True)
        print('Deleted template: {}'.format(expected_template_name))
    except:
        print('Cannot delete template: {}'.format(expected_template_name))
    
    # Create the Tag Template.
    try:
        tag_template = datacatalog.create_tag_template(
            parent=datacatalog_v1.DataCatalogClient.location_path(
                project_id, location),
            tag_template_id='demo_tag_template',
            tag_template=tag_template)
        print('Created template: {}'.format(tag_template.name))
    except:
        print('Cannot create template: {}'.format(expected_template_name))
    
    # -------------------------------
    # Lookup Data Catalog's Entry referring to the table.
    # -------------------------------
    resource_name = '//bigquery.googleapis.com/projects/{}' \
                    '/datasets/demo_dataset/tables/trips'.format(project_id)
    table_entry = datacatalog.lookup_entry(linked_resource=resource_name)
    
    # -------------------------------
    # Attach a Tag to the table.
    # -------------------------------
    tag = datacatalog_v1.types.Tag()
    
    tag.template = tag_template.name
    
    tag.fields['source'].string_value = 'Copied from tlc_yellow_trips_2017'
    tag.fields['num_rows'].double_value = 113496874
    tag.fields['has_pii'].bool_value = False
    tag.fields['pii_type'].enum_value.display_name = 'NONE'
    
    tag = datacatalog.create_tag(parent=table_entry.name, tag=tag)
    print('Created tag: {}'.format(tag.name))
    

Java

  1. Instalar a biblioteca cliente
  2. Configurar as credenciais padrão do aplicativo
  3. Execute o código
    /*
    This application demonstrates how to perform core operations with the
    Data Catalog API.
    
    For more information, see the README.md and the official documentation at
    https://cloud.google.com/data-catalog/docs.
    */
    
    package com.example.datacatalog;
    
    import com.google.cloud.datacatalog.v1.CreateTagRequest;
    import com.google.cloud.datacatalog.v1.CreateTagTemplateRequest;
    import com.google.cloud.datacatalog.v1.DataCatalogClient;
    import com.google.cloud.datacatalog.v1.DeleteTagTemplateRequest;
    import com.google.cloud.datacatalog.v1.Entry;
    import com.google.cloud.datacatalog.v1.FieldType;
    import com.google.cloud.datacatalog.v1.FieldType.EnumType;
    import com.google.cloud.datacatalog.v1.FieldType.EnumType.EnumValue;
    import com.google.cloud.datacatalog.v1.FieldType.PrimitiveType;
    import com.google.cloud.datacatalog.v1.LocationName;
    import com.google.cloud.datacatalog.v1.LookupEntryRequest;
    import com.google.cloud.datacatalog.v1.Tag;
    import com.google.cloud.datacatalog.v1.TagField;
    import com.google.cloud.datacatalog.v1.TagTemplate;
    import com.google.cloud.datacatalog.v1.TagTemplateField;
    import com.google.cloud.datacatalog.v1.TagTemplateName;
    
    public class CreateTags {
    
      public static void createTags() {
        // TODO(developer): Replace these variables before running the sample.
        String projectId = "my-project";
        String tagTemplateId = "my_tag_template";
        createTags(projectId, tagTemplateId);
      }
    
      public static void createTags(String projectId, String tagTemplateId) {
        // Currently, Data Catalog stores metadata in the us-central1 region.
        String location = "us-central1";
    
        // Initialize client that will be used to send requests. This client only needs to be created
        // once, and can be reused for multiple requests. After completing all of your requests, call
        // the "close" method on the client to safely clean up any remaining background resources.
        try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
    
          // -------------------------------
          // Create a Tag Template.
          // -------------------------------
          TagTemplateField sourceField =
              TagTemplateField.newBuilder()
                  .setDisplayName("Source of data asset")
                  .setType(FieldType.newBuilder().setPrimitiveType(PrimitiveType.STRING).build())
                  .build();
    
          TagTemplateField numRowsField =
              TagTemplateField.newBuilder()
                  .setDisplayName("Number of rows in data asset")
                  .setType(FieldType.newBuilder().setPrimitiveType(PrimitiveType.DOUBLE).build())
                  .build();
    
          TagTemplateField hasPiiField =
              TagTemplateField.newBuilder()
                  .setDisplayName("Has PII")
                  .setType(FieldType.newBuilder().setPrimitiveType(PrimitiveType.BOOL).build())
                  .build();
    
          TagTemplateField piiTypeField =
              TagTemplateField.newBuilder()
                  .setDisplayName("PII type")
                  .setType(
                      FieldType.newBuilder()
                          .setEnumType(
                              EnumType.newBuilder()
                                  .addAllowedValues(
                                      EnumValue.newBuilder().setDisplayName("EMAIL").build())
                                  .addAllowedValues(
                                      EnumValue.newBuilder()
                                          .setDisplayName("SOCIAL SECURITY NUMBER")
                                          .build())
                                  .addAllowedValues(
                                      EnumValue.newBuilder().setDisplayName("NONE").build())
                                  .build())
                          .build())
                  .build();
    
          TagTemplate tagTemplate =
              TagTemplate.newBuilder()
                  .setDisplayName("Demo Tag Template")
                  .putFields("source", sourceField)
                  .putFields("num_rows", numRowsField)
                  .putFields("has_pii", hasPiiField)
                  .putFields("pii_type", piiTypeField)
                  .build();
    
          CreateTagTemplateRequest createTagTemplateRequest =
              CreateTagTemplateRequest.newBuilder()
                  .setParent(
                      LocationName.newBuilder()
                          .setProject(projectId)
                          .setLocation(location)
                          .build()
                          .toString())
                  .setTagTemplateId("demo_tag_template")
                  .setTagTemplate(tagTemplate)
                  .build();
    
          String expectedTemplateName =
              TagTemplateName.newBuilder()
                  .setProject(projectId)
                  .setLocation(location)
                  .setTagTemplate("demo_tag_template")
                  .build()
                  .toString();
    
          // Delete any pre-existing Template with the same name.
          try {
            dataCatalogClient.deleteTagTemplate(
                DeleteTagTemplateRequest.newBuilder()
                    .setName(expectedTemplateName)
                    .setForce(true)
                    .build());
    
            System.out.println(String.format("Deleted template: %s", expectedTemplateName));
          } catch (Exception e) {
            System.out.println(String.format("Cannot delete template: %s", expectedTemplateName));
          }
    
          // Create the Tag Template.
          tagTemplate = dataCatalogClient.createTagTemplate(createTagTemplateRequest);
          System.out.println(String.format("Template created with name: %s", tagTemplate.getName()));
    
          // -------------------------------
          // Lookup Data Catalog's Entry referring to the table.
          // -------------------------------
          String linkedResource =
              String.format(
                  "//bigquery.googleapis.com/projects/%s/datasets/demo_dataset/tables/trips",
                  projectId);
          LookupEntryRequest lookupEntryRequest =
              LookupEntryRequest.newBuilder().setLinkedResource(linkedResource).build();
          Entry tableEntry = dataCatalogClient.lookupEntry(lookupEntryRequest);
    
          // -------------------------------
          // Attach a Tag to the table.
          // -------------------------------
          TagField sourceValue =
              TagField.newBuilder().setStringValue("Copied from tlc_yellow_trips_2017").build();
          TagField numRowsValue = TagField.newBuilder().setDoubleValue(113496874).build();
          TagField hasPiiValue = TagField.newBuilder().setBoolValue(false).build();
          TagField piiTypeValue =
              TagField.newBuilder()
                  .setEnumValue(TagField.EnumValue.newBuilder().setDisplayName("NONE").build())
                  .build();
    
          Tag tag =
              Tag.newBuilder()
                  .setTemplate(tagTemplate.getName())
                  .putFields("source", sourceValue)
                  .putFields("num_rows", numRowsValue)
                  .putFields("has_pii", hasPiiValue)
                  .putFields("pii_type", piiTypeValue)
                  .build();
    
          CreateTagRequest createTagRequest =
              CreateTagRequest.newBuilder().setParent(tableEntry.getName()).setTag(tag).build();
    
          dataCatalogClient.createTag(createTagRequest);
    
        } catch (Exception e) {
          System.out.print("Error during CreateTags:\n" + e.toString());
        }
      }
    }
    

Node.js

  1. Instalar a biblioteca cliente
  2. Configurar as credenciais padrão do aplicativo
  3. Execute o código
    async function main() {
        // -------------------------------
        // Import required modules.
        // -------------------------------
        const { DataCatalogClient } = require('@google-cloud/datacatalog').v1;
    
        // Common fields.
        let request;
        let responses;
    
        // -------------------------------
        // Set your Google Cloud Platform project ID.
        // -------------------------------
        const projectId = 'PROJECT_ID';
    
        // -------------------------------
        // Currently, Data Catalog stores metadata in the
        // us-central1 region.
        // -------------------------------
        const location = 'us-central1';
    
        // -------------------------------
        // Use Application Default Credentials to create a new
        // Data Catalog client. GOOGLE_APPLICATION_CREDENTIALS
        // environment variable must be set with the location
        // of a service account key file.
        // -------------------------------
        const datacatalog = new DataCatalogClient();
    
        // Create Fields.
        const fieldSource = {
            displayName: 'Source of data asset',
            type: {
                primitiveType: 'STRING',
            },
        };
    
        const fieldNumRows = {
            displayName: 'Number of rows in data asset',
            type: {
                primitiveType: 'DOUBLE',
            },
        };
    
        const fieldHasPII = {
            displayName: 'Has PII',
            type: {
                primitiveType: 'BOOL',
            },
        };
    
        const fieldPIIType = {
            displayName: 'PII type',
            type: {
                enumType: {
                    allowedValues: [
                        {
                            displayName: 'EMAIL',
                        },
                        {
                            displayName: 'SOCIAL SECURITY NUMBER',
                        },
                        {
                            displayName: 'NONE',
                        },
                    ],
                },
            },
        };
    
        // -------------------------------
        // Create Tag Template.
        // -------------------------------
        const tagTemplateId = 'demo_tag_template';
    
        const tagTemplate = {
            displayName: 'Demo Tag Template',
            fields: {
                source: fieldSource,
                num_rows: fieldNumRows,
                has_pii: fieldHasPII,
                pii_type: fieldPIIType,
            },
        };
    
        const tagTemplatePath = datacatalog.tagTemplatePath(
            projectId,
            location,
            tagTemplateId
        );
    
        // Delete any pre-existing Template with the same name.
        try {
            request = {
                name: tagTemplatePath,
                force: true,
            };
            await datacatalog.deleteTagTemplate(request);
            console.log(`Deleted template: ${tagTemplatePath}`);
        } catch (error) {
            console.log(`Cannot delete template: ${tagTemplatePath}`);
        }
    
        // Create the Tag Template request.
        const locationPath = datacatalog.locationPath(projectId, location);
    
        request = {
            parent: locationPath,
            tagTemplateId: tagTemplateId,
            tagTemplate: tagTemplate,
        };
    
        // Execute the request.
        responses = await datacatalog.createTagTemplate(request);
        const createdTagTemplate = responses[0];
        console.log(`Created template: ${createdTagTemplate.name}`);
    
        // -------------------------------
        // Lookup Data Catalog's Entry referring to the table.
        // -------------------------------
        responses = await datacatalog.lookupEntry({
            linkedResource: `//bigquery.googleapis.com/projects/` +
                `${projectId}/datasets/demo_dataset/tables/trips`,
        });
        const entry = responses[0];
        console.log(`Entry name: ${entry.name}`);
        console.log(`Entry type: ${entry.type}`);
        console.log(`Linked resource: ${entry.linkedResource}`);
    
        // -------------------------------
        // Attach a Tag to the table.
        // -------------------------------
        const tag = {
            name: entry.name,
            template: createdTagTemplate.name,
            fields: {
                source: {
                    stringValue: 'Copied from tlc_yellow_trips_2017',
                },
                num_rows: {
                    doubleValue: 113496874,
                },
                has_pii: {
                    boolValue: false,
                },
                pii_type: {
                    enumValue: {
                        displayName: 'NONE',
                    },
                },
            },
        };
    
        request = {
            parent: entry.name,
            tag: tag,
        };
    
        // Create the Tag.
        await datacatalog.createTag(request);
        console.log(`Tag created for entry: ${entry.name}`);
    }
    
    main();
    

REST e LINHA DE CMD

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: código do projeto do GCP.

Método HTTP e URL:

POST https://datacatalog.googleapis.com/v1/projects/project-id/locations/us-central1/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"
            },
            {
              "displayName":"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"
            },
            {
              "displayName":"NONE"
            },
            {
              "displayName":"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 de projeto do GCP.

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 de projeto do GCP.
  • 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/us-central1/entryGroups/@bigquery/entries/entry-id/tags?tagTemplateId=demo_tag_template

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"
}

Limpar

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados neste guia de início rápido, siga estas etapas:

Excluir o projeto

O jeito mais fácil de evitar cobranças é excluindo o projeto que você criou para o tutorial.

Para excluir o projeto:

  1. No Console do Cloud, acesse a página Gerenciar recursos:

    Acessar a página "Gerenciar recursos"

  2. Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir .
  3. Na caixa de diálogo, digite o ID do projeto e clique em Encerrar para excluí-lo.

Como excluir o conjunto de dados

  1. Se necessário, abra a IU da Web do BigQuery.

    Acesse a IU da Web do BigQuery

  2. No painel de navegação, na seção Recursos, clique no conjunto de dados demo_dataset criado.

  3. No painel de detalhes, à direita, clique em Excluir conjunto de dados. Esta ação exclui o conjunto de dados, a tabela e todos os dados.

  4. Na caixa de diálogo Excluir conjunto de dados, confirme o comando de exclusão digitando o nome do seu conjunto de dados (demo_dataset) e clique em Excluir.

Como excluir o modelo de tag

  1. Abra a IU do Data Catalog no Console do Google Cloud. No Modelo de tag, clique em “Explorar modelos de tag”.

  2. Clique em "Modelo de tag de demonstração".

  3. Na página Modelo de tag, clique em “Excluir” para excluir o modelo de tag de demonstração.

A seguir