Crie um repositório

Este documento ajuda a compreender o conceito de repositórios no Dataform e como criar um novo repositório.

Acerca dos repositórios do Dataform

Cada repositório do Dataform contém uma coleção de ficheiros SQLX e JavaScript que compõem o seu fluxo de trabalho, bem como ficheiros de configuração e pacotes do Dataform. Interage com o conteúdo do seu repositório num espaço de trabalho de desenvolvimento.

O Dataform apresenta os seus repositórios na página do Dataform por ordem alfabética dos IDs dos repositórios. Pode ordená-los e filtrá-los.

  • Para ver os seus repositórios, na Google Cloud consola, aceda à página Dataform.

    Aceder ao Dataform

Cada repositório do Dataform está ligado a uma conta de serviço. Pode selecionar uma conta de serviço quando criar um repositório ou editar a conta de serviço mais tarde.

Por predefinição, o Dataform usa uma conta de serviço derivada do número do seu projeto no seguinte formato:

service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com

O Dataform usa o Git para registar alterações e gerir versões de ficheiros. Cada repositório do Dataform corresponde a um repositório Git. Depois de criar um repositório do Dataform, pode associá-lo a um repositório remoto do GitHub, GitLab ou Bitbucket.

Num repositório do Dataform, o Dataform armazena o código do repositório. Num repositório associado, o repositório de terceiros armazena o código do repositório. O Dataform interage com o repositório de terceiros para lhe permitir editar e executar o respetivo conteúdo num espaço de trabalho de desenvolvimento do Dataform.

Uma página do repositório do Dataform é composta pelos seguintes componentes:

Separador Espaços de trabalho de desenvolvimento
Apresenta os espaços de trabalho de desenvolvimento criados no repositório.
Separador Configurações de lançamento
Permite inspecionar, criar, editar e eliminar lançamentos.
Separador Registos de execução do fluxo de trabalho
Apresenta registos de execução do fluxo de trabalho do Dataform.
Separador Configurações do fluxo de trabalho
Permite inspecionar, criar, editar e eliminar configurações de fluxo de trabalho.
Separador Definições
Apresenta o nome e a localização do repositório. Para um repositório associado a um repositório Git de terceiros, apresenta a origem do repositório de terceiros, o nome da ramificação predefinida e a chave secreta. Apresenta os botões para associar o repositório a um repositório Git de terceiros e para editar a associação Git.
Botão Criar espaço de trabalho de desenvolvimento
Permite criar um espaço de trabalho de desenvolvimento.

Depois de criar e inicializar um espaço de trabalho de desenvolvimento, pode editar o ficheiro de definições do fluxo de trabalho para configurar as seguintes definições do Dataform do seu repositório:

  • A base de dados predefinida (Google Cloud ID do projeto).
  • O esquema predefinido (ID do conjunto de dados do BigQuery).
  • A localização predefinida do BigQuery.
  • O esquema predefinido (ID do conjunto de dados do BigQuery) para asserções.
  • O armazém, que tem de ser definido como bigquery.
  • Variáveis definidas pelo utilizador que são disponibilizadas ao código do projeto durante a compilação.

Para mais informações sobre as definições do repositório do Dataform, consulte o artigo IProjectConfig na referência principal do Dataform.

Definições do repositório

Quando cria um repositório do Dataform, tem de definir as seguintes definições do repositório:

ID do repositório
Um ID exclusivo do repositório. Os IDs só podem incluir números, letras, hífenes e sublinhados.
Região

Região do Dataform para armazenar o repositório e o respetivo conteúdo.

Esta região de armazenamento pode ser diferente da região de processamento onde o Dataform processa o seu código e armazena o resultado das execuções. Por predefinição, a região de processamento é definida como a região do conjunto de dados do BigQuery predefinido. Pode editar a região de processamento no ficheiro de definições do fluxo de trabalho depois de criar o repositório. Para mais informações, consulte o artigo Configure as definições do fluxo de trabalho do Dataform.

Conta de serviço

Conta de serviço associada ao repositório. Pode selecionar a conta de serviço do Dataform predefinida, uma conta de serviço associada ao seu projeto doGoogle Cloud ou introduzir manualmente uma conta de serviço diferente. Por predefinição, o Dataform usa uma conta de serviço derivada do número do seu projeto no seguinte formato:

service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com

O Dataform usa a conta de serviço predefinida para todas as operações do repositório. Pode usar uma conta de serviço diferente para executar fluxos de trabalho no seu repositório, mas a conta de serviço predefinida continua a ser usada para todas as outras operações do repositório.

Modo de atuação rigoroso (pré-visualização)

Ativa uma verificação de segurança adicional que requer a autorização iam.serviceAccounts.actAs na conta de serviço. Para mais informações, consulte o artigo Use o modo de atuação rigoroso.

Encriptação

Método de encriptação para o repositório. Pode usar a encriptação predefinida, uma chave de encriptação do Cloud KMS gerida pelo cliente exclusiva ou uma chave CMEK do Dataform predefinida. Para mais informações sobre a utilização de chaves de encriptação geridas pelo cliente (CMEK) no Dataform, consulte o artigo Use chaves de encriptação geridas pelo cliente.

Depois de criar um repositório, pode associá-lo ao GitHub ou ao GitLab.

Antes de começar

  1. 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.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the BigQuery and Dataform APIs.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the BigQuery and Dataform APIs.

    Enable the APIs

  8. Para usar a encriptação CMEK para o repositório, ative a encriptação CMEK de repositórios do Dataform.
  9. Funções necessárias

    Para receber as autorizações de que precisa para criar e eliminar um repositório, peça ao seu administrador para lhe conceder a função do IAM Administrador do Dataform (roles/dataform.admin) nos repositórios. 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.

    Para usar uma conta de serviço diferente da conta de serviço do Dataform predefinida, conceda acesso à conta de serviço personalizada.

    Para ver detalhes sobre as funções necessárias para executar fluxos de trabalho no BigQuery, consulte Funções necessárias para contas de serviço do Dataform.

    Depois de criar um repositório do Dataform, o Dataform concede-lhe automaticamente a função de administrador do Dataform nesse repositório.

    Crie um repositório

    Para criar um repositório do Dataform, siga estes passos:

    1. Na Google Cloud consola, aceda à página Dataform.

      Aceder ao Dataform

    2. Clique em Criar repositório.

    3. Na página Criar repositório, no campo ID do repositório, introduza um ID exclusivo.

      Os IDs só podem incluir números, letras, hífenes e sublinhados.

    4. Na lista pendente Região, selecione uma região do Dataform para armazenar o repositório e o respetivo conteúdo. Selecione a região do Dataform mais próxima da sua localização.

      Para ver uma lista das regiões do Dataform disponíveis, consulte o artigo Localizações. A região do repositório não tem de corresponder à localização dos seus conjuntos de dados do BigQuery.

      No ficheiro workflow_settings.yaml, pode definir a região de tratamento onde o Dataform trata o seu código e armazena o resultado das execuções. A região de processamento tem de corresponder à localização dos seus conjuntos de dados do BigQuery, mas não tem de corresponder à região do repositório. Para mais informações, consulte o artigo Configure as definições do fluxo de trabalho do Dataform.

    5. No menu Conta de serviço, selecione uma conta de serviço para o repositório.

      No menu, pode selecionar a conta de serviço do Dataform predefinida ou qualquer conta de serviço associada ao seu Google Cloud projeto ao qual tem acesso. Tenha em atenção que as contas de serviço personalizadas são usadas apenas para a execução do fluxo de trabalho. Todas as outras operações do repositório continuam a ser realizadas pela conta de serviço do Dataform predefinida.

      1. Opcional: para selecionar uma conta de serviço que não é apresentada no menu, clique em Introduzir manualmente e introduza um ID da conta de serviço.
    6. Opcional: selecione Aplicar verificação de autorização "actAs" para ativar verificações de segurança adicionais em determinadas ações do utilizador no repositório. Para ver detalhes sobre estas verificações, consulte o artigo Use o modo de atuação rigoroso.

    7. Configure o mecanismo de encriptação selecionado para o repositório:

      Chave CMEK predefinida

      O Dataform apresenta a caixa de verificação Usar a chave do KMS predefinida e seleciona-a por predefinição.

      • Para encriptar o repositório com a chave CMEK do Dataform predefinida, mantenha a caixa de verificação Usar a chave do KMS predefinida selecionada.

      Chave CMEK exclusiva

      Para encriptar o repositório com uma chave CMEK exclusiva, faça o seguinte:

      1. Se a caixa de verificação Usar a chave KMS predefinida estiver selecionada por predefinição, desmarque a caixa de verificação.
      2. Na secção Encriptação, selecione a opção Chaves de encriptação geridas pelo cliente (CMEK).
      3. No menu pendente Selecionar uma chave gerida pelo cliente, selecione uma chave CMEK exclusiva.

      Encriptação em repouso

    8. Clique em Criar e, de seguida, em Concluído.

    Edite a conta de serviço

    Pode associar uma conta de serviço personalizada a um repositório do Dataform para a execução do fluxo de trabalho. Todas as outras operações do repositório continuam a ser realizadas pela conta de serviço do Dataform predefinida.

    Para editar a conta de serviço de um repositório do Dataform, siga estes passos:

    1. Na Google Cloud consola, aceda à página Dataform.

      Aceder ao Dataform

    2. Selecione um repositório e, de seguida, clique em Definições.

    3. No campo Conta de serviço, clique em Editar conta de serviço.

    4. No menu pendente Conta de serviço, selecione uma conta de serviço para o repositório.

      No menu pendente, pode selecionar a conta de serviço do Dataform predefinida ou qualquer conta de serviço associada ao seu projeto ao qual tem acesso. Google Cloud

      1. Opcional: para selecionar uma conta de serviço que não é apresentada no menu pendente, clique em Introduzir manualmente e introduza um ID da conta de serviço.
    5. Clique em Guardar.

    Elimine um repositório

    Para eliminar um repositório e todo o respetivo conteúdo, siga estes passos:

    1. Na Google Cloud consola, aceda à página Dataform.

      Aceder ao Dataform

    2. Junto ao repositório que quer eliminar, clique no menu Mais e, de seguida, selecione Eliminar.

    3. Na janela Eliminar repositório, introduza o nome do repositório para confirmar a eliminação.

    4. Clique em Eliminar.

    O que se segue?