Faça a gestão das trocas de dados na partilha do BigQuery

Como administrador da partilha do BigQuery, pode fazer o seguinte na partilha do BigQuery (anteriormente Analytics Hub):

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

Por predefinição, uma troca de dados é privada e apenas os utilizadores ou os grupos que têm acesso a essa troca podem ver ou subscrever os dados. No entanto, se quiser que as listas sejam descobertas e subscritas por utilizadores (Google Cloud ), pode pedir para tornar a sua troca de dados pública.allAuthenticatedUsers

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 exchange.

  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. Em 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 vista INFORMATION_SCHEMA.SHARED_DATASET_USAGE.

  7. Para ativar a deteção pública, clique no botão Deteção pública. Assim que uma troca for publicamente detetável, todas as fichas na troca são apresentadas e pesquisáveis no catálogo. Se ativar a visibilidade pública, tem de configurar as autorizações de troca. Devido à herança de permissões, todas as fichas são definidas por predefinição com o mesmo tipo de capacidade de descoberta pública da troca. Por conseguinte, as trocas públicas não podem ter fichas privadas, mas as trocas privadas podem ter fichas públicas (por exemplo, pode definir o tipo de capacidade de deteção pública ao nível da ficha individual). O projeto no qual está a criar 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, siga estes 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 método projects.locations.dataExchanges.create.

POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges?dataExchangeId=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 (anteriormente Analytics Hub), consulte o artigo 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, clique numa 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 método projects.locations.dataExchanges.patch.

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. Veja a lista de trocas de dados no seu Google Cloud projeto. Se tiver a autorização resourcemanager.organizations.get, também pode ver a lista de 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 para a qual 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. Tem de partilhar 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. Para o fazer, siga estes passos:

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 todos 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, tem de criar 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.

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

Se quiser que os administradores façam a gestão de uma troca de dados específica, conceda 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 e apenas os utilizadores ou os grupos que têm acesso a essa troca podem ver ou subscrever as respetivas fichas. No entanto, pode optar por tornar uma troca de dados pública. As fichas em trocas de dados públicas podem ser descobertas e subscritas por Google Cloud utilizadores (allAuthenticatedUsers).

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

  1. Para permitir que os utilizadores allAuthenticatedUsers vejam fichas, tem de conceder-lhes a função de leitor do Analytics Hub (roles/analyticshub.viewer) ao nível da troca de dados.

  2. Para permitir que os utilizadores allAuthenticatedUsers subscrevam fichas>, tem de conceder-lhes 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

Quando uma troca de dados é eliminada, todas as fichas na mesma também são eliminadas. No entanto, os conjuntos de dados partilhados e os conjuntos de dados associados não são eliminados. Além disso, quando um projeto é eliminado, as trocas de dados no mesmo não são eliminadas. Tem de eliminar estas trocas de dados antes de eliminar o projeto. Se eliminar uma troca de dados, não pode anular a ação.

Antes de eliminar uma troca de dados, tem de realizar 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, clique na 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 método projects.locations.dataExchanges.delete.

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

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?