Tarefa de pipeline para jobs
O Lakeflow Jobs oferece uma abordagem procedural para definir relacionamentos entre tarefas . Os Lakeflow pipelines oferecem uma abordagem declarativa para definir relacionamentos entre datasets e transformações . Programe um pipeline para ser executado como uma tarefa em um Job, usando a interface do usuário de Jobs, a interface do usuário de LakeFlow Pipelines ou SQL.
Uma tarefa de pipeline executa seu pipeline de uma das duas maneiras, dependendo do agendamento do job:
- Em um job acionado ou programado, a tarefa de pipeline inicia uma única atualização e para quando a atualização é concluída.
- Em um job contínuo, a tarefa de pipeline executa o pipeline continuamente. O agendamento do Job determina o modo de execução, portanto, o pipeline é executado continuamente mesmo se sua própria configuração de Modo Pipeline estiver como Trigger. Consulte Executar um pipeline continuamente com um job contínuo.
Para saber mais sobre pipelines acionados e contínuos, consulte Modo de pipeline acionado vs. contínuo.
Configurar uma tarefa de pipeline com a interface de usuário de Jobs
Lakeflow pipelines gerenciam todas as configurações para código-fonte e compute na definição do pipeline.
Para adicionar um pipeline a um job, complete os seguintes passos:
- Crie e nomeie uma nova tarefa e selecione **pipeline** para o **Tipo**.
- No menu suspenso Pipeline , selecione um pipeline existente.
- Opcionalmente, você pode acionar um refresh completo no pipeline.
- Opcionalmente, é possível definir substituições de parâmetros no campo Parâmetros . Consulte Parâmetros.
- (Opcional) Para configurar novas tentativas, duração da execução ou limites de backlog de transmissão, ou notificações, consulte Configurações avançadas de tarefa.
Você também pode criar um novo pipeline de ingestão ao criar uma tarefa, escolhendo Novo pipeline de ingestão no painel Adicionar tarefa ou na lista suspensa Tipo das tarefas.
Para editar, clonar, desativar ou excluir esta tarefa, consulte Configurar e editar tarefas no Lakeflow Jobs.
Executar um pipeline continuamente com um job contínuo
Quando um job contínuo contém uma tarefa de pipeline, o job executa o pipeline continuamente. Você não precisa definir o Modo de pipeline integrado do pipeline como contínuo: o agendamento do job determina o modo de execução e tem precedência sobre a configuração do Modo de pipeline .
Isso se aplica apenas a Lakeflow pipelines. Visualizações materializadas e tabelas de transmissão autônomas sempre são executadas no modo triggered.
Um pipeline contínuo encapsulado em um job contínuo pode usar modos de desempenho serverless, como o modo Standard, que o modo contínuo integrado do pipeline não suporta.
O Databricks recomenda executar pipelines contínuos com um job contínuo em vez da configuração contínua integrada do pipeline. Para evitar comportamento inesperado, defina o Modo Pipeline do pipeline como acionado (o default) ao envolvê-lo em um job contínuo. Para obter mais informações, consulte Executar um pipeline contínuo com um job contínuo.
Você pode criar o job contínuo na interface do usuário de Jobs, diretamente na página do pipeline ou com Pacotes de Automação Declarativa. Consulte Programar um pipeline com a interface do usuário do pipeline e Definir um job de pipeline contínuo em Pacotes de Automação Declarativa.
Definir um job de pipeline contínuo em Pacotes de Automação Declarativa
O exemplo de Pacotes de Automação Declarativa a seguir define um job contínuo que executa um pipeline como uma tarefa. Definir continuous.pause_status como UNPAUSED executa o pipeline continuamente, e performance_target: STANDARD executa o job no modo de desempenho Padrão.
# resources/continuous_job.yml
resources:
jobs:
continuous_pipeline_job:
name: continuous_pipeline_job
performance_target: STANDARD
continuous:
pause_status: UNPAUSED
email_notifications:
on_failure:
- your_email@example.com
tasks:
- task_key: refresh_pipeline
pipeline_task:
pipeline_id: ${resources.pipelines.example_pipeline.id}
Para migrar um pipeline contínuo existente para um job contínuo, remova o campo continuous da definição do pipeline. O job então configura a execução contínua.
Para o payload equivalente da API de jobs, consulte a referência jobs/create.
Pipeline de sincronização de tabelas de banco de dados
A tarefa **pipeline de sincronização de tabela de banco de dados** é uma tarefa de pipeline que executa o pipeline mantendo uma tabela sincronizada do Lakebase. Use-o para refresh uma tabela sincronizada em uma programar, ou quando a tabela de origem do Unity Catalog mudar, para que os aplicativos operacionais leiam os dados atuais do Lakebase Postgres.
No menu suspenso **Tipo** da tarefa, **Pipeline de Sincronização de Tabelas de Banco de Dados** aparece em **Ingestão e Transformação**. Selecioná-lo configura uma tarefa de pipeline. No campo **Pipeline**, escolha o pipeline associado à tabela sincronizada que você deseja refresh.
Para configurar a tarefa para sua tabela sincronizada, consulte tarefa de pipeline de sincronização de tabelas de banco de dados.
Pipeline de ingestão
A tarefa **Pipeline de ingestão** é uma tarefa de pipeline que executa um pipeline de ingestão. No menu suspenso **Tipo** da tarefa, escolher **Pipeline de ingestão** inicia o assistente **Adicionar dados**, que cria uma tarefa de pipeline para um pipeline de ingestão.
A primeira página do assistente solicita a fonte de dados. As páginas seguintes dependem da fonte que você selecionar. Por exemplo, se você selecionar MySQL, consulte Opção 1: IU do Databricks para os passos. Para as fontes disponíveis, consulte Conectores gerenciados no Lakeflow Connect.
Parâmetros
Beta
Este recurso está em Beta. Os administradores do espaço de trabalho podem controlar o acesso a esse recurso na página Pré-visualizações . Consulte Gerenciar prévias do Databricks.
Você pode acessar parâmetros de job ou tarefa em sua tarefa de pipeline usando referências de valores dinâmicos. É possível substituir parâmetros adicionando pares **key-value** nos **Parâmetros** da sua configuração de tarefa.
Para obter detalhes sobre como acessar os valores dos parâmetros de seu pipeline, consulte Acessar valores de parâmetro de uma tarefa.
Limites de simultaneidade com tarefas de pipeline
Um pipeline pode executar apenas uma atualização por vez. Jobs que contêm uma tarefa de pipeline estão sujeitos aos seguintes limites de simultaneidade:
- Um Job com
max_concurrent_runs > 1que contém uma tarefa de pipeline é limitado a uma única execução concorrente. A interface do usuário do Job mostra um aviso quando esse limite é aplicado. - Uma tarefa de pipeline envolvida em uma tarefa for-each é limitada a uma iteração concorrente, independentemente da simultaneidade configurada do loop.
Planeje em torno desses limites ao projetar pipelines parametrizados que você pretende executar com muitas combinações de parâmetros ou em cronogramas apertados.
Programar um pipeline com a IU do pipeline
Adicionar um agendamento a um pipeline cria um job com uma única tarefa de pipeline. Para opções de Trigger mais avançadas, consulte Configure a pipeline task with the Jobs UI.
Configure uma tarefa de pipeline em um Job agendado usando a UI do pipeline, seguindo os passos a seguir:
-
No seu workspace, clique
em **Jobs & Pipelines** na barra lateral.
-
Clique em **Nome** do pipeline. A interface do usuário do pipeline aparece.
-
Click programar .
- Se nenhum agendamento existir para o pipeline, a caixa de diálogo **Novo agendamento** é exibida.
- Se um ou mais agendamentos já existirem, clique em Adicionar agendamento .
-
Na lista suspensa Tipo de trigger , selecione um tipo de trigger:
- Scheduled cria um agendamento baseado em tempo. Selecione Advanced para mais opções, incluindo sintaxe cron.
- Contínuo cria um job contínuo que executa o pipeline continuamente. Consulte Executar um pipeline continuamente com um job contínuo.
-
Insira um nome exclusivo para o Job no campo **Nome do Job**.
-
(Opcional) Para executar o pipeline no modo de desempenho Padrão, desmarque a caixa de seleção Desempenho otimizado . Consulte Selecionar um modo de desempenho.
-
(Opcional) Em Mais opções , configure um ou mais endereços de email para receber alertas sobre o início, sucesso ou falha do pipeline.
-
Clique em Criar .
Para um agendamento contínuo, o Databricks inicia a execução automaticamente. Para pará-lo, clique em Stop na página do pipeline ou pause o agendamento. Ambas as ações também cancelam a atualização ativa.
Se o pipeline estiver incluído em um ou mais Jobs programados, o botão **Programar** mostra o número de agendamentos existentes, por exemplo, **Programar (5)**.
Recursos adicionais
- Tarefa de pipeline: Defina uma tarefa de pipeline como código com Pacotes de Automação Declarativa.
- Modo de pipeline Trigger vs. contínuo: saiba mais sobre os modos de Trigger de pipeline.
- Configurar parâmetros da tarefa: passar parâmetros para a tarefa.