Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo descreve a semântica operacional de modos acionados e contínuos para pipelines.
O modo de pipeline é independente do tipo de tabela que está sendo computada. As exibições materializadas e as tabelas de streaming podem ser atualizadas em um dos modos de pipeline.
Para alterar entre os modos disparado e contínuo, use a opção Modo Pipeline nas configurações de pipeline durante a criação ou edição de um pipeline. Consulte Configurar Pipelines.
Observação
As operações de atualização para exibições materializadas e tabelas de streaming definidas no Databricks SQL sempre são executadas com o modo de pipeline disparado.
O que é o modo de pipeline disparado?
Se o pipeline usar o modo disparado, o sistema interromperá o processamento depois de atualizar com êxito todas as tabelas ou tabelas selecionadas, garantindo que cada tabela na atualização seja atualizada com base nos dados disponíveis quando a atualização for iniciada.
O que é o modo de pipeline contínuo?
Se o pipeline usar a execução contínua, o Lakeflow Spark Declarative Pipelines processará novos dados à medida que chegam às fontes de dados para manter as tabelas atualizadas ao longo do pipeline.
Para evitar o processamento desnecessário no modo de execução contínua, os pipelines monitoram automaticamente tabelas Delta dependentes e executam uma atualização somente quando o conteúdo dessas tabelas dependentes é alterado.
Escolher um modo de pipeline de dados
A seguinte tabela destaca as diferenças entre os modos de pipeline contínuo e disparado:
| Principais perguntas | Disparado | Contínuo |
|---|---|---|
| Quando a atualização é interrompida? | Automaticamente depois de concluído. | Funciona continuamente até ser interrompido manualmente. |
| Quais dados são processados? | Dados disponíveis quando a atualização é iniciada. | Todos os dados à medida que chegam às fontes configuradas. |
| Para quais requisitos de atualização de dados isso é melhor? | As atualizações de dados são executadas a cada 10 minutos, por hora ou diariamente. | As atualizações de dados são desejadas entre 10 segundos e alguns minutos. |
Os pipelines disparados podem reduzir o consumo de recursos e as despesas porque o cluster é executado apenas pelo tempo suficiente para atualizar o pipeline. No entanto, novos dados não serão processados até que o pipeline seja acionado. Os pipelines contínuos exigem um cluster sempre em execução, o que é mais caro mas reduz a latência de processamento.
Definir o intervalo de gatilho para pipelines contínuos
Ao configurar pipelines para o modo contínuo, você pode definir intervalos de gatilho para controlar com que frequência o pipeline inicia uma atualização para cada fluxo.
Você pode usar pipelines.trigger.interval para controlar o intervalo de ativação para um fluxo que atualiza uma tabela ou um pipeline inteiro. Como um pipeline disparado processa cada tabela uma vez, a opção pipelines.trigger.interval é usada apenas com pipelines contínuos.
O Databricks recomenda a configuração pipelines.trigger.interval em tabelas individuais porque as consultas de streaming e de lote têm padrões diferentes. Defina o valor em um pipeline somente quando o processamento exigir o controle de atualizações para todo o grafo de pipeline.
Você define pipelines.trigger.interval em uma tabela usando spark_conf o Python ou SET no SQL:
@dp.table(
spark_conf={"pipelines.trigger.interval" : "10 seconds"}
)
def <function-name>():
return (<query>)
SET pipelines.trigger.interval=10 seconds;
CREATE OR REFRESH MATERIALIZED VIEW TABLE_NAME
AS SELECT ...
Para definir pipelines.trigger.interval em um pipeline, adicione-o ao objeto configuration nas configurações do pipeline.
{
"configuration": {
"pipelines.trigger.interval": "10 seconds"
}
}