Pular para o conteúdo principal

Modo de pipeline acionado vs. contínuo

Este artigo descreve a semântica operacional dos modos pipeline acionado e contínuo para DLT.

O modo de pipeline é independente do tipo de tabela que está sendo computada. Tanto a visualização materializada quanto as tabelas de transmissão podem ser atualizadas no modo pipeline.

Para alternar entre acionado e contínuo, use a opção de modo de pipeline nas configurações do pipeline ao criar ou editar um pipeline. Consulte Configurar um pipeline DLT.

nota

As operações de atualização para visualização materializada e tabelas de transmissão definidas em Databricks SQL sempre são executadas usando o modo pipeline acionado.

O que é o modo de pipeline acionado?

Se o site pipeline usar o modo acionado , o sistema interromperá o processamento após 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 começar.

O que é o modo de pipeline contínuo?

Se o site pipeline usa execução contínua , a DLT processa novos dados à medida que eles chegam na fonte de dados para manter as tabelas em todo o site pipeline atualizadas.

Para evitar o processamento desnecessário no modo de execução contínua, o pipeline monitora automaticamente as tabelas dependentes do Delta e executa uma atualização somente quando o conteúdo dessas tabelas dependentes é alterado.

Escolha um modo de pipeline de dados

A tabela a seguir destaca as diferenças entre os modos de pipeline acionado e contínuo:

questões-chave

Acionado

Contínuo

Quando a atualização é interrompida?

Automaticamente, uma vez concluído.

execução contínua até a interrupção manual.

Quais dados são processados?

Dados disponíveis quando a atualização começar.

Todos os dados à medida que chegam às fontes configuradas.

Para quais requisitos de atualização de dados isso é melhor?

Os dados são atualizados a cada 10 minutos, de hora em hora ou diariamente.

As atualizações de dados são desejadas entre cada 10 segundos e alguns minutos.

O pipeline acionado pode reduzir o consumo de recursos e as despesas porque a execução do clustering dura apenas o tempo suficiente para atualizar o pipeline. No entanto, os novos dados não serão processados até que o pipeline seja acionado. O pipeline contínuo exige um cluster sempre em execução, o que é mais caro, mas reduz a latência do processamento.

Definir o intervalo de disparo para pipeline contínuo

Ao configurar o pipeline para o modo contínuo, o senhor pode definir intervalos de acionamento para controlar a frequência com que o pipeline começa uma atualização para cada fluxo.

O senhor pode usar pipelines.trigger.interval para controlar o intervalo de acionamento de um fluxo que atualiza uma tabela ou um pipeline inteiro. Como o site pipeline acionado processa cada tabela uma vez, o pipelines.trigger.interval é usado somente com o pipeline contínuo.

Databricks recomenda a definição de pipelines.trigger.interval em tabelas individuais porque as consultas de transmissão e lotes têm padrões diferentes. Defina o valor em um pipeline somente quando o processamento exigir o controle de atualizações para todo o gráfico do pipeline.

O senhor define pipelines.trigger.interval em uma tabela usando spark_conf em Python ou SET em SQL:

Python
@dlt.table(
spark_conf={"pipelines.trigger.interval" : "10 seconds"}
)
def <function-name>():
return (<query>)
SQL
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:

JSON
{
"configuration": {
"pipelines.trigger.interval": "10 seconds"
}
}