Agende pipelines
Este documento descreve como programar pipelines do BigQuery, incluindo como programar pipelines e inspecionar execuções de pipelines programadas.
Os pipelines são baseados no Dataform. Cada agendamento de pipeline é executado com as credenciais de utilizador da sua Conta Google ou uma conta de serviço do Dataform que seleciona quando configura o agendamento.
As alterações que faz a um pipeline são guardadas automaticamente, mas estão disponíveis apenas para si e para os utilizadores aos quais foi concedida a função de administrador do Dataform no projeto. Para atualizar a agenda com uma nova versão do pipeline, tem de implementar o pipeline. A implementação atualiza o agendamento para usar a versão atual do pipeline. Os agendamentos executam sempre a versão implementada mais recente.
As agendas de pipelines que contêm blocos de notas usam uma especificação de tempo de execução predefinida. Durante uma execução agendada de um pipeline que contenha blocos de notas, o BigQuery escreve o resultado do bloco de notas no contentor do Cloud Storage selecionado durante a criação do agendamento.
Antes de começar
Antes de começar, crie um pipeline.
Ative o agendamento de pipelines
Para agendar pipelines, tem de conceder as seguintes funções à conta de serviço que planeia usar para agendamentos de pipelines:
- Utilizador da conta de serviço (
roles/iam.serviceAccountUser
) - Siga as instruções em Conceda uma única função numa conta de serviço para adicionar a sua conta de serviço como principal a si própria. Por outras palavras, adicione a conta de serviço como um principal à mesma conta de serviço. Em seguida, conceda a função Utilizador da conta de serviço a este principal.
Se o seu pipeline contiver consultas SQL, tem de conceder as seguintes funções à conta de serviço que planeia usar para agendamentos de pipelines:
- Utilizador de tarefas do BigQuery (
roles/bigquery.jobUser
) - Siga Conceda uma única função num projeto para conceder a função de utilizador da tarefa do BigQuery à sua conta de serviço em projetos a partir dos quais os seus pipelines leem dados.
- Visualizador de dados do BigQuery (
roles/bigquery.dataViewer
) - Siga Conceda uma única função num projeto para conceder a função de visualizador de dados do BigQuery à sua conta de serviço em projetos a partir dos quais os seus pipelines leem dados.
- Editor de dados do BigQuery (
roles/bigquery.dataEditor
) - Siga as instruções em Conceda uma única função num projeto para conceder a função de editor de dados do BigQuery à sua conta de serviço nos projetos para os quais os seus pipelines escrevem dados.
Se o seu pipeline contiver blocos de notas, tem de conceder as seguintes funções à conta de serviço que planeia usar para agendamentos de pipelines:
- Notebook Executor User (
roles/aiplatform.notebookExecutorUser
) - Siga os passos em Conceda uma única função num projeto para conceder a função de utilizador do executor do bloco de notas à sua conta de serviço no projeto selecionado.
- Administrador de armazenamento (
roles/storage.admin
) - Siga os passos em Adicione um principal a uma política ao nível do contentor para adicionar a sua conta de serviço como principal ao contentor do Cloud Storage que planeia usar para armazenar o resultado dos blocos de notas executados em execuções de pipelines agendadas e conceda a função de administrador de armazenamento a este principal.
Além disso, tem de conceder a seguinte função à conta de serviço do Dataform predefinida:
- Service Account Token Creator (
roles/iam.serviceAccountTokenCreator
) - Siga o artigo Conceda acesso à criação de tokens a uma conta de serviço para adicionar a conta de serviço predefinida do Dataform como principal à sua conta de serviço e conceda a função Criador de tokens de conta de serviço a este principal.
Para saber mais sobre as contas de serviço no Dataform, consulte o artigo Acerca das contas de serviço no Dataform.
Funções necessárias
Para receber as autorizações de que precisa para gerir pipelines, peça ao seu administrador que lhe conceda as seguintes funções de IAM:
-
Elimine pipelines:
Dataform Admin (
roles/dataform.Admin
) no pipeline -
Criar, editar, executar e eliminar agendamentos de pipelines:
Administrador do Dataform (
roles/dataform.Admin
) no pipeline -
Ver e executar pipelines:
Visualizador do Dataform (
roles/dataform.Viewer
) no projeto -
Ver horários de pipelines:
Editor do Dataform (
roles/dataform.Editor
) no 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.
Para mais informações sobre a IAM do Dataform, consulte o artigo Controle o acesso com a IAM.
Para usar modelos de tempo de execução de blocos de notas do Colab ao agendar pipelines, precisa da função
Utilizador do tempo de execução do bloco de notas (roles/aiplatform.notebookRuntimeUser
).
Crie uma programação de pipeline
Para criar uma programação de pipeline, siga estes passos:
Painel Explorador
Na Google Cloud consola, aceda à página BigQuery.
No painel Explorador, expanda o projeto e a pasta Pipelines e, de seguida, selecione um pipeline.
Clique em Agendar.
No painel Agendar pipeline, no campo Nome da agenda, introduza um nome para a agenda.
Na secção Autenticação, autorize o pipeline com as credenciais de utilizador da sua Conta Google ou uma conta de serviço.
- Para usar as credenciais de utilizador da sua Conta Google (Pré-visualização), selecione Executar com as minhas credenciais de utilizador.
- Para usar uma conta de serviço, selecione Executar com a conta de serviço selecionada e, de seguida, selecione uma conta de serviço.
Se o seu pipeline contiver um bloco de notas, na secção Opções do bloco de notas, no campo Modelo de tempo de execução, selecione um modelo de tempo de execução do bloco de notas do Colab ou as especificações de tempo de execução predefinidas. Para ver detalhes sobre como criar um modelo de tempo de execução do Colab, consulte o artigo Crie um modelo de tempo de execução.
Se o seu pipeline contiver um notebook, na secção Opções do notebook, no campo Contentor do Cloud Storage, clique em Procurar e selecione ou crie um contentor do Cloud Storage para armazenar o resultado dos notebooks no seu pipeline.
À conta de serviço selecionada tem de ser concedida a função do IAM de administrador de armazenamento no contentor selecionado. Para mais informações, consulte o artigo Ative a programação de pipelines.
Na secção Frequência da programação, faça o seguinte:
- No menu Repetições, selecione a frequência das execuções de pipeline agendadas.
- No campo Às, introduza a hora das execuções agendadas do pipeline.
- No menu Fuso horário, selecione o fuso horário para o agendamento.
Clique em Criar programação. Se selecionou Executar com as minhas credenciais de utilizador para o seu método de autenticação, tem de autorizar a sua Conta Google (Pré-visualização).
Quando cria a programação, a versão atual do pipeline é implementada automaticamente. Para atualizar a programação com uma nova versão do pipeline, implemente o pipeline.
A versão implementada mais recente do pipeline é executada na hora e na frequência selecionadas.
Página Programação
Na Google Cloud consola, aceda à página Agendamento.
Clique em Criar e, de seguida, selecione Agenda de pipeline no menu.
No painel Agendar pipeline, selecione uma pipeline para agendar.
No campo Nome da programação, introduza um nome para a programação.
Na secção Autenticação, autorize o pipeline com as credenciais de utilizador da sua Conta Google ou uma conta de serviço.
- Para usar as credenciais de utilizador da sua Conta Google (Pré-visualização), selecione Executar com as minhas credenciais de utilizador.
- Para usar uma conta de serviço, selecione Executar com a conta de serviço selecionada e, de seguida, selecione uma conta de serviço.
Se o seu pipeline contiver um bloco de notas, na secção Opções do bloco de notas, no campo Modelo de tempo de execução, selecione um modelo de tempo de execução do bloco de notas do Colab ou as especificações de tempo de execução predefinidas. Para ver detalhes sobre como criar um modelo de tempo de execução do Colab, consulte o artigo Crie um modelo de tempo de execução.
Se o seu pipeline contiver um bloco de notas, no campo Contentor do Cloud Storage, clique em Procurar e selecione ou crie um contentor do Cloud Storage para armazenar o resultado dos blocos de notas no seu pipeline.
À conta de serviço selecionada tem de ser concedida a função do IAM de administrador de armazenamento no contentor selecionado. Para mais informações, consulte o artigo Ative a programação de pipelines.
Na secção Frequência da programação, faça o seguinte:
- No menu Repetições, selecione a frequência de execuções da pipeline agendadas.
- No campo Às, introduza a hora das execuções agendadas do pipeline.
- No menu Fuso horário, selecione o fuso horário para o agendamento.
Clique em Criar programação. Se selecionou Executar com as minhas credenciais de utilizador para o seu método de autenticação, tem de autorizar a sua Conta Google (Pré-visualização).
Autorize a sua Conta Google
Para autenticar o recurso com as credenciais de utilizador da sua Conta Google, tem de conceder manualmente autorização aos pipelines do BigQuery para obterem a chave de acesso da sua Conta Google e acederem aos dados de origem em seu nome. Pode conceder aprovação manual com a interface da caixa de diálogo do OAuth.
Só tem de conceder autorização aos pipelines do BigQuery uma vez.
Para revogar a autorização que concedeu, siga estes passos:
- Aceda à página da Conta Google.
- Clique em Pipelines do BigQuery.
- Clique em Remover acesso.
A alteração do proprietário da programação do pipeline através da atualização das credenciais também requer aprovação manual se o novo proprietário da Conta Google nunca tiver criado uma programação antes.
Se o seu pipeline contiver um bloco de notas, também tem de conceder manualmente autorização ao Colab Enterprise para obter o token de acesso da sua Conta Google e aceder aos dados de origem em seu nome. Só tem de conceder autorização uma vez. Pode revogar esta autorização na página da Conta Google.
Implemente uma pipeline
A implementação de um pipeline atualiza a respetiva programação com a versão atual do pipeline. Os agendamentos executam a versão implementada mais recente do pipeline.
Para implementar um pipeline, siga estes passos:
Na Google Cloud consola, aceda à página BigQuery.
No painel Explorador, expanda o projeto e a pasta Pipelines e, de seguida, selecione um pipeline.
Clique em Implementar.
A programação correspondente é atualizada com a versão atual do pipeline. A versão implementada mais recente do pipeline é executada à hora agendada.
Desative um agendamento
Para pausar as execuções agendadas de um pipeline selecionado sem eliminar o agendamento, pode desativar o agendamento.
Para desativar uma programação para um pipeline selecionado, siga estes passos:
Painel Explorador
Na Google Cloud consola, aceda à página BigQuery.
No painel Explorador, expanda o projeto e a pasta Pipelines e, de seguida, selecione um pipeline.
Clique em Ver programação.
Na tabela Detalhes da programação, na linha Estado da programação, clique no botão A programação está ativada.
Página Programação
Na Google Cloud consola, aceda à página Agendamento.
Clique no nome do pipeline selecionado.
Na página Detalhes da programação, clique em Desativar.
Ative um horário
Para retomar execuções agendadas de uma agenda de pipeline desativada, siga estes passos:
Painel Explorador
Na Google Cloud consola, aceda à página BigQuery.
No painel Explorador, expanda o projeto e a pasta Pipelines e, de seguida, selecione um pipeline.
Clique em Ver programação.
Na tabela Detalhes da programação, na linha Estado da programação, clique no botão A programação está desativada.
Página Programação
Na Google Cloud consola, aceda à página Agendamento.
Clique no nome do pipeline selecionado.
Na página Detalhes da programação, clique em Ativar.
Execute manualmente um pipeline implementado
Quando executa manualmente um pipeline implementado num horário selecionado, o BigQuery executa o pipeline implementado uma vez, independentemente do horário.
Para executar manualmente um pipeline implementado, siga estes passos:
Na Google Cloud consola, aceda à página Agendamento.
Clique no nome da programação de pipeline selecionada.
Na página Detalhes da programação, clique em Executar.
Veja todos os agendamentos de pipelines
Para ver todos os horários de pipelines no seu Google Cloud projeto, siga estes passos:
Na Google Cloud consola, aceda à página Agendamento.
Opcional: para apresentar colunas adicionais com detalhes da calendarização do pipeline, clique em
Opções de apresentação de colunas, selecione as colunas e clique em OK.
Veja os detalhes da programação do pipeline
Para ver os detalhes de uma programação de pipeline selecionada, siga estes passos:
Painel Explorador
Na Google Cloud consola, aceda à página BigQuery.
No painel Explorador, expanda o projeto e a pasta Pipelines e, de seguida, selecione um pipeline.
Clique em Ver programação.
Página Programação
Na Google Cloud consola, aceda à página Agendamento.
Clique no nome da programação de pipeline selecionada.
Veja execuções agendadas anteriores
Para ver as execuções anteriores de uma programação de pipeline selecionada, siga estes passos:
Painel Explorador
Na Google Cloud consola, aceda à página BigQuery.
No painel Explorador, expanda o projeto e a pasta Pipelines e, de seguida, selecione um pipeline.
Clique em Execuções.
Opcional: para atualizar a lista de execuções anteriores, clique em Atualizar.
Página Programação
Na Google Cloud consola, aceda à página Agendamento.
Clique no nome do pipeline selecionado.
Na página Detalhes do agendamento, na secção Execuções anteriores, inspecione as execuções anteriores.
Opcional: para atualizar a lista de execuções anteriores, clique em Atualizar.
Edite um horário do pipeline
Para editar uma programação de pipeline, siga estes passos:
Painel Explorador
Na Google Cloud consola, aceda à página BigQuery.
No painel Explorador, expanda o projeto e a pasta Pipelines e, de seguida, selecione um pipeline.
Clique em Ver programação e, de seguida, em Editar.
Na caixa de diálogo Agendar pipeline, edite a programação e, de seguida, clique em Atualizar programação.
Página Programação
Na Google Cloud consola, aceda à página Agendamento.
Clique no nome do pipeline selecionado.
Na página Detalhes do horário, clique em Editar.
Clique em Ver programação e, de seguida, em Editar.
Na caixa de diálogo Agendar pipeline, edite a programação e, de seguida, clique em Atualizar programação.
Elimine uma programação de pipeline
Para eliminar permanentemente uma programação de pipeline, siga estes passos:
Na Google Cloud consola, aceda à página Agendamento.
Execute uma das seguintes ações:
Clique no nome do agendamento do pipeline selecionado e, de seguida, na página Detalhes do agendamento, clique em Eliminar.
Na linha que contém a programação do pipeline selecionada, clique em
Ver ações na coluna Ações e, de seguida, clique em Eliminar.
Na caixa de diálogo apresentada, clique em Eliminar.
O que se segue?
- Saiba mais acerca dos pipelines no BigQuery.
- Saiba como criar pipelines.