Criar produtos de dados

Este documento é destinado a proprietários de produtos de dados que querem criar e configurar produtos de dados no Dataplex Universal Catalog.

Para mais informações sobre a arquitetura e os conceitos principais dos produtos de dados, consulte Sobre produtos de dados.

Antes de começar

  1. Enable the Dataplex, BigQuery APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  2. Verifique se os recursos de dados (por exemplo, conjuntos de dados, tabelas e visualizações do BigQuery) foram criados e preenchidos.

    Para mais informações sobre como criar recursos de dados, consulte os documentos a seguir:

  3. Identifique ou crie os Grupos do Google que você quer configurar no seu produto de dados. Cada produto de dados precisa ter um grupo do Google exclusivo.

Funções exigidas

Esta seção descreve os papéis mínimos do IAM necessários para dois grupos de usuários principais: proprietários de produtos de dados (que criam e gerenciam produtos de dados) e consumidores de produtos de dados (que pesquisam e usam produtos de dados).

Funções de um proprietário de produto de dados

Para ter as permissões necessárias para criar e gerenciar produtos de dados, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto:

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Esses papéis predefinidos contêm as permissões necessárias para criar e gerenciar produtos de dados. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:

Permissões necessárias

As seguintes permissões são necessárias para criar e gerenciar produtos de dados:

  • Edite o tipo de aspecto do sistema overview: dataplex.entryGroups.useOverviewAspect
  • Edite o tipo de aspecto do sistema refresh cadence: dataplex.entryGroups.useRefreshCadenceAspect

Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.

Funções para um consumidor de produto de dados

Para que os consumidores de produtos de dados possam pesquisar, visualizar e solicitar acesso a produtos de dados, como proprietário de um produto de dados, você precisa garantir que ele seja detectável. Para fazer isso, conceda aos consumidores de produtos de dados os seguintes papéis do IAM no produto de dados:

  • Pesquise e acesse produtos de dados na Pesquisa do Dataplex Universal Catalog: Consumidor de produtos de dados do Dataplex (dataplex.dataProductsConsumer)
  • Acesso somente leitura para visualizar definições e metadados de produtos de dados: leitor de produtos de dados do Dataplex (dataplex.dataProductsViewer)
  • Solicitar acesso a produtos de dados: consumidor de produtos de dados do Dataplex (dataplex.dataProductsConsumer)

Criar e configurar um produto de dados

A criação de um produto de dados envolve as seguintes tarefas de alto nível:

  1. Criar um produto de dados

    Essa etapa inicial obrigatória exige a definição de detalhes principais, como um nome exclusivo, uma descrição, a região em que o produto de dados é criado e os detalhes do proprietário.

  2. Opcional: adicione recursos

    Nesta fase, você seleciona os recursos a serem incluídos no produto de dados. Uma restrição importante é que os recursos precisam estar na mesma região que o próprio produto de dados. É possível adicionar no máximo 10 recursos a um produto de dados.

    Para conferir a lista de recursos compatíveis, consulte Recursos compatíveis.

  3. Opcional: configurar grupos de acesso e permissões de recursos

    Nesta fase opcional, você simplifica o controle de acesso criando grupos de acesso. Esses grupos de acesso funcionam como aliases fáceis de usar (por exemplo, Analyst ou Reader) para grupos do Google subjacentes. Em seguida, atribua permissões selecionando uma função específica do IAM e mapeando-a para um grupo de acesso de um recurso específico.

  4. Opcional: adicione mais detalhes, como contratos, aspectos e documentação

    Essa fase opcional melhora a governança e os metadados. Você pode adicionar um contrato, que é um tipo de aspecto próprio, para comunicar formalmente a cadência de atualização de dados acordada, especificando parâmetros como frequência, horário e limite de atualização. Você também inclui Aspectos para fornecer mais metadados para o produto de dados. Além disso, você adiciona documentação Rich Text, como guias do usuário e exemplos de consultas.

Para criar e configurar um produto de dados, siga as etapas nas seções abaixo:

Criar um produto de dados

Console

  1. No console Google Cloud , acesse a página Produtos de dados do Dataplex Universal Catalog.

    Acessar Produtos de dados

  2. Clique em Criar.

  3. No painel Criar produtos de dados, insira os seguintes detalhes:

    • Nome do produto de dados: insira um nome exclusivo para seu produto de dados.
    • ID do produto de dados: um identificador exclusivo gerado automaticamente. É possível editar esse campo.
    • ID do projeto: um identificador exclusivo do projeto em que o produto de dados é criado. Procure e selecione o projeto.
    • Região: selecione a região ou multirregião em que o produto de dados foi criado.
    • Ícone: navegue e selecione um ícone para identificar visualmente o produto de dados. Isso é opcional.
    • Descrição: insira uma breve descrição do produto de dados.
    • Contatos: insira o ID de e-mail do proprietário do produto de dados.
    • Rótulos: adicione rótulos de chave-valor para organizar seus recursos. Isso é opcional.
  4. Clique em Criar produto de dados.

REST

Para criar um produto de dados, use o método dataProducts.create.

Por exemplo, envie a seguinte solicitação POST:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{"display_name": "DISPLAY_NAME", "owner_emails": ["EMAIL_IDs"]}' \
https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataProducts?data_product_id=DATA_PRODUCT_ID

Substitua:

  • DISPLAY_NAME: um nome fácil de usar para seu produto de dados
  • EMAIL_IDs: IDs de e-mail separados por vírgulas dos proprietários do produto de dados
  • PROJECT_ID: o ID do seu projeto Google Cloud
  • LOCATION: a região em que você quer criar o produto de dados
  • DATA_PRODUCT_ID: um ID exclusivo para seu produto de dados

Opcional: adicione recursos

Console

  1. No painel Adicionar recursos, clique em +Adicionar.

  2. Pesquise e selecione os recursos que você quer adicionar ao produto de dados. Os recursos selecionados precisam estar na mesma região do produto de dados.

    Se você tiver as permissões necessárias, clique no recurso para ver os metadados dele.

  3. Para refinar os resultados da pesquisa, use Filtros.

  4. Depois de selecionar os recursos, clique em Adicionar.

  5. Clique em Continuar.

REST

Para adicionar um recurso de dados ao produto, use o método dataAssets.create.

Por exemplo, envie a seguinte solicitação POST:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{"resource": "RESOURCE_NAME"}' \
https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataProducts/DATA_PRODUCT_ID/dataAssets?data_asset_id=DATA_ASSET_ID

Substitua:

  • RESOURCE_NAME: o nome completo do recurso do recurso de dados (por exemplo, //bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID).
  • PROJECT_ID: o ID do seu Google Cloud projeto
  • LOCATION: a região em que o produto de dados existe.
  • DATA_PRODUCT_ID: o ID do produto de dados
  • DATA_ASSET_ID: um ID exclusivo para esse recurso de dados no produto de dados.

Opcional: configurar grupos de acesso e permissões de recursos

No painel Configurar grupos de acesso e permissões de recursos, é possível criar grupos de acesso e atribuir permissões aos recursos.

Configurar grupos de acesso

Console

  1. Clique em Adicionar grupo de acesso.

  2. No campo Nome do grupo de acesso, digite um nome para o grupo. Por exemplo, Analyst.

  3. No campo Descrição do grupo de acesso, insira uma descrição para o grupo de acesso.

  4. No campo Identificador do grupo de acesso, insira o endereço de e-mail de um grupo do Google que você quer atribuir a esse grupo de acesso. Os consumidores de produtos de dados que solicitarem acesso a esse grupo podem ser adicionados como membros ao grupo do Google mapeado.

    Se você não tiver um grupo do Google, crie um. Para mais informações, consulte Criar e gerenciar Grupos do Google no console do Google Cloud .

  5. Clique em Adicionar.

REST

Para configurar um grupo de acesso ao produto de dados, use o método dataProducts.patch.

Por exemplo, envie a seguinte solicitação PATCH:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{"access_groups": ACCESS_GROUPS_MAP}' \
https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataProducts/DATA_PRODUCT_ID?update_mask="access_groups"

Substitua:

  • ACCESS_GROUPS_MAP: um objeto JSON que representa um mapa em que cada chave é um ID de grupo de acesso e o valor é um objeto AccessGroup. Exemplo:

    {
    "analyst": {
      "id": "analyst","display_name": "Analyst access group","description": "Access group for analysts","principal":
    {"google_group": "analyst-team@example.com"}
      }
    }
    
  • PROJECT_ID: o ID do seu projeto Google Cloud

  • LOCATION: a região em que o produto de dados existe.

  • DATA_PRODUCT_ID: o ID do seu produto de dados

Configurar permissões de recursos

Depois de configurar os grupos de acesso, você pode configurar as permissões para os recursos no produto de dados.

Console

  1. Na seção Permissões de recursos, selecione o recurso para o qual você quer configurar permissões.

  2. Clique em Configurar permissões.

  3. No campo Selecionar grupo de acesso, escolha um grupo.

  4. No campo Atribuir papel do IAM, selecione um papel do IAM que você quer atribuir ao grupo de acesso.

    Por exemplo, se o recurso for uma tabela do BigQuery chamada Sales, e se você tiver selecionado o grupo de acesso Analyst e atribuído a função BigQuery Metadata Viewer a esse grupo, os consumidores de produtos de dados que fazem parte do grupo de acesso Analyst terão permissão BigQuery Metadata Viewer na tabela Sales.

    É possível adicionar várias funções a um recurso.

  5. Clique em Configurar. O recurso agora mostra as permissões atribuídas.

  6. Para configurar permissões para outros recursos, repita as etapas.

  7. Clique em Continuar.

REST

Para configurar permissões para os recursos no produto de dados, use o método dataAssets.patch.

Por exemplo, envie a seguinte solicitação PATCH:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{"access_group_configs": ACCESS_GROUP_CONFIGS_MAP}' \
https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataProducts/DATA_PRODUCT_ID/dataAssets/DATA_ASSET_ID?update_mask="access_group_configs"

Substitua:

  • ACCESS_GROUP_CONFIGS_MAP: um objeto JSON que representa um mapa em que cada chave é um ID de grupo de acesso e o valor é um objeto AccessGroupConfig. Exemplo:

    {
    "analyst": {
      iam_roles: ["roles/bigquery.dataViewer"]
      }
    }
    
  • PROJECT_ID: o ID do seu projeto Google Cloud

  • LOCATION: a região em que o produto de dados existe.

  • DATA_PRODUCT_ID: o ID do seu produto de dados

  • DATA_ASSET_ID: o ID do recurso para o qual você quer configurar permissões

Opcional: adicione mais detalhes

Também é possível adicionar contratos, aspectos e documentação extra para o produto de dados.

Adicionar um contrato

Console

  1. No painel Adicionar mais detalhes, clique em Adicionar contrato.

  2. No campo Selecionar contrato, escolha Refresh cadence.

  3. No campo Frequência, selecione um cronograma acordado para a frequência com que os dados são atualizados ou entregues, garantindo um fluxo previsível do produtor ao consumidor de dados. Por exemplo, Weekly.

  4. No campo Tempo de atualização, digite um tempo máximo aceitável entre a atualização dos dados na origem e a disponibilização para o consumidor. Por exemplo, 23:00 PST.

  5. No campo Limite (em minutos), insira um limite mensurável em minutos para o atraso aceitável na entrega de dados. Por exemplo, insira 30 para definir o limite como 30 minutos.

  6. Opcional: no campo Programação do cron, insira uma expressão cron que defina a programação para geração e entrega de dados no formato: MINUTE HOUR DAY_OF_MONTH MONTH DAY_OF_WEEK

    Confira a seguir os valores aceitos:

    • MINUTE: 0-59
    • HOUR: 0-23
    • DAY_OF_MONTH: 1-31
    • MONTH: 1-31 ou JAN-DEC.
    • DAY_OF_WEEK: 0-6 ou SUN-SAT.

    Por exemplo, 0 8 * * 1-5 é executado às 8h nos dias úteis (de segunda a sexta-feira).

  7. Clique em Salvar.

REST

Os contratos são modelados como aspectos no produto de dados. Para adicionar um contrato de Refresh Cadence a um produto de dados, use o método entries.patch.

Por exemplo, envie a seguinte solicitação PATCH:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d \
'{
  "aspects": {
    "dataplex-types.global.refresh-cadence": {
      "aspectType": "projects/dataplex-types/locations/global/aspectTypes/refresh-cadence",
      "data": {
        "frequency": "REFRESH_FREQUENCY"
      }
    }
  }
}' \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/entryGroups/@dataplex/entries/projects/DATA_PRODUCT_PROJECT_ID/locations/DATA_PRODUCT_LOCATION/dataProducts/DATA_PRODUCT_ID?updateMask=aspects"

Substitua:

  • REFRESH_FREQUENCY: o cronograma acordado para a frequência de atualização ou entrega dos dados, garantindo um fluxo previsível do produtor para o consumidor de dados. Por exemplo: Weekly
  • PROJECT_ID: o ID do seu Google Cloud projeto em que a chamada de API está sendo feita
  • LOCATION: a região do endpoint de serviço do Dataplex Universal Catalog que você está chamando (por exemplo, us-central1)
  • DATA_PRODUCT_PROJECT_ID: o ID do projeto em que o recurso do produto de dados está localizado
  • DATA_PRODUCT_LOCATION: o local do recurso de produto de dados
  • DATA_PRODUCT_ID: o ID do seu produto de dados

Adicionar mais metadados

Para adicionar mais metadados ao produto de dados como aspectos, siga estas etapas:

Console

  1. No painel Adicionar mais detalhes, clique em + Adicionar aspecto.

  2. No campo Selecionar tipo de aspecto, pesquise e selecione um tipo de aspecto na lista. Por exemplo, Geo context.

  3. No campo País, selecione o país do recurso.

  4. No campo Região, selecione a região comercial a que o recurso pertence.

  5. Clique em Salvar.

  6. Para adicionar mais documentação, como um guia do usuário ou exemplos de consultas, clique em Editar ao lado de Documentação. Isso abre um editor de rich text. Adicione conteúdo e clique em Salvar.

  7. Clique em Salvar.

    O produto de dados recém-criado aparece na página Produtos de dados do Dataplex Universal Catalog.

REST

Para adicionar aspectos e documentação a um produto de dados, use o método entries.patch.

A documentação de um produto de dados é gerenciada pelo tipo de aspecto do sistema overview.

A seguir