Faça a gestão das trocas de dados

Este documento descreve como gerir trocas de dados na partilha do BigQuery (anteriormente Analytics Hub). Enquanto administrador da partilha do BigQuery, pode fazer o seguinte:

  • Criar, atualizar, ver, partilhar e eliminar trocas de dados.
  • Criar, atualizar, eliminar e partilhar fichas.
  • Faça a gestão dos administradores de partilha, dos administradores de fichas, dos publicadores, dos subscritores e dos visitantes do BigQuery.

Por predefinição, uma troca de dados é privada. Apenas os utilizadores ou os grupos com acesso a uma troca podem ver ou subscrever os respetivos dados. Pode pedir para tornar a sua troca de dados pública. Tornar a sua troca de dados pública permite que Google Cloud os utilizadores (allAuthenticatedUsers) descubram e subscrevam anúncios.

Antes de começar

Para começar a usar a partilha do BigQuery (anteriormente Analytics Hub), tem de ativar a API Analytics Hub no seu Google Cloud projeto.

Para ativar a API Analytics Hub, precisa das seguintes autorizações de gestão de identidades e acessos (IAM):

  • serviceUsage.services.get
  • serviceUsage.services.list
  • serviceUsage.services.enable

A seguinte função de IAM predefinida inclui as autorizações necessárias para ativar a API Analytics Hub:

Para ativar a API Analytics Hub, selecione uma das seguintes opções:

Consola

Aceda à página da API Analytics Hub e ative a API Analytics Hub para o seu Google Cloud projeto.

Ative a API Analytics Hub

gcloud

Execute o comando gcloud services enable:

gcloud services enable analyticshub.googleapis.com

Funções necessárias

Para receber as autorizações de que precisa para gerir trocas de dados, peça ao seu administrador para lhe conceder a função de administrador do Analytics Hub (roles/analyticshub.admin) função do IAM no seu projeto. Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

Também pode conseguir as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.

Crie uma troca de dados

Para criar uma troca de dados, siga estes passos:

Consola

  1. Aceda à página Partilha (Centro de análise).

    Aceda à partilha (Analytics Hub)

  2. Clique em Criar troca.

  3. Na caixa de diálogo Criar troca, selecione um projeto e uma região para a sua troca de dados. Não pode atualizar o projeto e a região depois de criar a troca de dados.

  4. No campo Nome a apresentar, introduza um nome para a troca de dados.

  5. Opcional: introduza valores nos seguintes campos:

    • Contacto principal: introduza o URL ou o endereço de email do contacto principal para a troca de dados.
    • Descrição: introduza uma descrição para a troca de dados.
  6. Para registar os identificadores principais de todos os utilizadores que executam tarefas e consultas em conjuntos de dados associados, clique no botão Registo de email do subscritor. Quando ativa esta opção, todas as fichas futuras na troca de dados têm o registo de emails de subscritores ativado. Os dados registados estão disponíveis no job_principal_subjectcampo da vistaINFORMATION_SCHEMA.SHARED_DATASET_USAGE.

  7. Para ativar a deteção pública, clique no botão ativar/desativar Deteção pública. Quando uma troca é publicamente detetável, todas as fichas na troca aparecem e são pesquisáveis no catálogo. Se ativar a capacidade de descoberta pública, configure as autorizações de troca. Por predefinição, todas as fichas herdam a definição de capacidade de deteção pública da troca de dados. Esta herança de definições significa que as trocas públicas não podem ter listas privadas, mas as trocas privadas podem ter listas públicas. Pode definir o tipo de visibilidade pública ao nível da ficha individual. O projeto onde cria a troca de dados tem de ter uma organização e uma conta de faturação associadas.

  8. Clique em Criar troca.

  9. Opcional: na secção Autorizações de troca, conclua os seguintes passos:

    1. Introduza os endereços de email nos seguintes campos para conceder as funções de gestão de identidade e de acesso (IAM):

    2. Para guardar as autorizações, clique em Definir autorizações.

  10. Se não definiu autorizações para a troca de dados, clique em Ignorar.

API

Use o projects.locations.dataExchanges.create método.

POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges?dataExchangeId=DATAEXCHANGE_ID

Substitua o seguinte:

  • PROJECT_ID: o ID do projeto onde quer criar a troca de dados.
  • LOCATION: a localização da sua troca de dados. Para mais informações sobre as localizações que suportam a partilha do BigQuery, consulte as regiões suportadas.
  • DATAEXCHANGE_ID: o ID da sua troca de dados.

No corpo do pedido, indique os detalhes da troca de dados.

Se o pedido for bem-sucedido, o corpo da resposta contém os detalhes da troca de dados.

Se ativar o registo de emails de subscritores com o campo logLinkedDatasetQueryUserEmail, a resposta da troca de dados contém log_linked_dataset_query_user_email: true. Os dados registados estão disponíveis no campo job_principal_subject da vista INFORMATION_SCHEMA.SHARED_DATASET_USAGE.

Para mais informações sobre as tarefas que pode realizar em trocas de dados através de APIs, consulte os métodos projects.locations.dataExchanges.

Atualize uma troca de dados

Para atualizar uma troca de dados, siga estes passos:

Consola

  1. Aceda à página Partilha (Centro de análise).

    Aceda à partilha (Analytics Hub)

  2. Na lista de trocas de dados, selecione a troca de dados que quer atualizar.

  3. Aceda ao separador Detalhes.

  4. Clique em Editar câmbio.

  5. Na caixa de diálogo Editar câmbio, atualize os seguintes campos:

    • Nome a apresentar
    • Contacto principal
    • Descrição
    • Deteção pública
      • Se ativar a capacidade de deteção pública, conceda a função de leitor do Analytics Hub (roles/analyticshub.viewer) a allUsers ou allAuthenticatedUsers.
      • Se desativar a capacidade de deteção pública, remova a função de leitor do Analytics Hub (roles/analyticshub.viewer) de allUsers ou allAuthenticatedUsers. As trocas públicas não podem ter fichas privadas, mas as trocas privadas podem ter fichas públicas.
    • Registo de emails de subscritores

  6. Clique em Guardar.

API

Use o projects.locations.dataExchanges.patch método.

PATCH https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges/DATAEXCHANGE_ID?updateMask=UPDATEMASK

Substitua UPDATEMASK pela lista de campos que quer atualizar. Para atualizar vários valores, use uma lista separada por vírgulas. Por exemplo, para atualizar o nome a apresentar e o contacto principal de uma troca de dados, introduza displayName,primaryContact.

No corpo do pedido, especifique os valores atualizados para os seguintes campos:

  • displayName
  • description
  • primaryContact
  • documentation
  • icon
  • discoveryType
  • logLinkedDatasetQueryUserEmail

Para ver detalhes sobre estes campos, consulte o recurso: DataExchange.

Para mais informações sobre as tarefas que pode realizar em trocas de dados através de APIs, consulte os métodos projects.locations.dataExchanges.

Veja as trocas de dados

Para ver as trocas de dados no seu projeto ou organização aos quais tem acesso, siga estes passos:

Consola

  1. Aceda à página Partilha (Centro de análise).

    Aceda à partilha (Analytics Hub)

  2. A página apresenta as trocas de dados no seu Google Cloud projeto. Se tiver a autorização resourcemanager.organizations.get, também pode ver as trocas de dados na sua Google Cloud organização.

API

Para ver as trocas de dados no seu projeto, use o método projects.locations.dataExchanges.list:

GET https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges

Substitua o seguinte:

  • PROJECT_ID: o ID do projeto.
  • LOCATION: a localização para a qual quer listar as trocas de dados existentes.

Para ver as trocas de dados na sua organização, use o organizations.locations.dataExchanges.list método:

GET https://analyticshub.googleapis.com/v1/organizations/ORGANIZATION_ID/location/LOCATION/dataExchanges

Substitua o seguinte:

  • ORGANIZATION_ID: o ID da organização. Para mais informações, consulte o artigo Obtenha o ID da sua organização.
  • LOCATION: a localização onde quer listar as trocas de dados existentes.

Partilhe uma troca de dados

Se o publicador da partilha do BigQuery pertencer a uma organização diferente da organização que contém a troca de dados, o publicador não pode ver a sua troca de dados na partilha do BigQuery. Partilhe um link para a troca de dados com o publicador.

  1. Aceda à página Partilha (Centro de análise).

    Aceda à partilha (Analytics Hub)

  2. Na lista de trocas de dados, clique em Mais opções.

  3. Clique em Copiar link de partilha.

Conceda aos utilizadores acesso a uma troca de dados

Para conceder aos utilizadores acesso a uma troca de dados, tem de definir a política de IAM para essa troca de dados. Para obter informações sobre as funções de utilizador de IAM predefinidas, consulte o artigo Funções de IAM de partilha do BigQuery.

Consola

  1. Na Google Cloud consola, aceda à página Partilha (Analytics Hub).

    Aceda à partilha (Analytics Hub)

  2. Clique no nome da troca de dados para a qual quer definir autorizações.

  3. Aceda ao separador Detalhes.

  4. Clique em Definir autorizações.

  5. Para adicionar diretores, clique em Adicionar diretor.

  6. No campo Novos responsáveis, adicione os IDs de email aos quais quer conceder acesso. Também pode usar allUsers para tornar um recurso público e acessível a todas as pessoas na Internet ou allAuthenticatedUsers para o tornar acessível apenas aos utilizadores do Google com sessão iniciada.

  7. No menu Selecionar uma função, selecione Analytics Hub e, de seguida, selecione uma das seguintes funções de gestão de identidades e acessos (IAM):

    • Administrador do Analytics Hub
    • Administrador da ficha do Analytics Hub
    • Editor do Analytics Hub
    • Subscritor do Analytics Hub
    • Proprietário da subscrição do Analytics Hub
    • Visualizador do Analytics Hub
  8. Clique em Guardar.

API

  1. Leia a política existente com o método getIamPolicy através do método projects.locations.dataExchanges.getIamPolicy:

    POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:getIamPolicy
    

    Substitua o seguinte:

    • PROJECT_ID: o ID do projeto, por exemplo, my-project-1.
    • LOCATION: a localização da sua troca de dados. Use letras minúsculas.
    • DATAEXCHANGE_ID: o ID da troca de dados.

    A partilha do BigQuery (anteriormente Analytics Hub) devolve a política atual.

  2. Para adicionar ou remover membros e as respetivas funções de gestão de identidade e acesso (IAM) associadas, edite a política com um editor de texto. Use o seguinte formato para adicionar membros:

    • user:test-user@gmail.com
    • group:admins@example.com
    • serviceAccount:test123@example.domain.com
    • domain:example.domain.com

    Por exemplo, para conceder a função roles/analyticshub.subscriber a group:subscribers@example.com, adicione a seguinte associação à política:

    {
     "members": [
       "group:subscribers@example.com"
     ],
     "role":"roles/analyticshub.subscriber"
    }
    
  3. Escreva a política atualizada através do método projects.locations.dataExchanges.setIamPolicy. No corpo do pedido, indique a política de IAM atualizada do passo anterior.

    POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:setIamPolicy
    

    No corpo do pedido, indique os detalhes da ficha. Se o pedido for bem-sucedido, o corpo da resposta contém detalhes da ficha.

Crie administradores de partilha do BigQuery

Para gerir trocas de dados, crie administradores de trocas de dados concedendo aos utilizadores a função de administrador do Analytics Hub (roles/analyticshub.admin) ao nível do projeto ou da troca de dados.

Para permitir que os administradores geram todas as trocas de dados num projeto, conceda-lhes a função de administrador do Analytics Hub para esse projeto.

Para permitir que os administradores geram uma troca de dados específica, conceda-lhes a função de administrador do Analytics Hub para essa troca de dados.

Torne uma troca de dados pública

Por predefinição, uma troca de dados é privada. Apenas os utilizadores ou os grupos com acesso a uma bolsa de câmbio podem ver ou subscrever as respetivas fichas. Pode tornar uma troca de dados pública, o que permite aos utilizadores (allAuthenticatedUsers) descobrir e subscrever as respetivas fichas.Google Cloud

Para tornar uma troca de dados pública, siga estes passos:

  1. Para permitir que allAuthenticatedUsers veja fichas, conceda-lhe a função de visualizador do Analytics Hub (roles/analyticshub.viewer) ao nível da troca de dados.

  2. Para permitir que allAuthenticatedUsers subscreva fichas>, conceda-lhe a função de subscritor do Analytics Hub (roles/analyticshub.subscriber) ao nível da troca de dados.

  3. Ative a capacidade de deteção pública quando criar ou atualizar uma troca de dados. Especifique as autorizações adequadas quando tornar uma troca de dados pública.

Elimine uma troca de dados

A eliminação de uma troca de dados também elimina todas as respetivas fichas. No entanto, os conjuntos de dados partilhados e associados não são eliminados. Quando elimina um projeto, as respetivas trocas de dados não são eliminadas. Elimine estas trocas de dados antes de eliminar o projeto. Não é possível anular uma eliminação de troca de dados.

Antes de eliminar uma troca de dados, conclua os seguintes passos com base na configuração da troca de dados:

Para eliminar uma troca de dados, siga estes passos:

Consola

  1. Aceda à página Partilha (Centro de análise).

    Aceda à partilha (Analytics Hub)

  2. Na lista de trocas de dados, selecione a troca de dados que quer eliminar.

  3. Aceda ao separador Detalhes.

  4. Clique em Eliminar troca.

  5. Na caixa de diálogo Eliminar troca?, confirme a eliminação escrevendo eliminar.

  6. Clique em Eliminar.

API

Use o projects.locations.dataExchanges.delete método.

DELETE https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID

Substitua o seguinte:

  • PROJECT_ID: o ID do projeto no qual quer criar a troca de dados.
  • LOCATION: a localização da sua troca de dados. Para mais informações sobre as localizações que suportam a partilha do BigQuery, consulte as regiões suportadas.
  • DATAEXCHANGE_ID: o ID da sua troca de dados.

Para mais informações sobre as tarefas que pode realizar em trocas de dados através de APIs, consulte os métodos projects.locations.dataExchanges.

O que se segue?