Partilhar via


Realizar uma atualização de um pipeline Delta Live Tables

Este artigo explica as atualizações de pipeline e fornece detalhes sobre como acionar uma atualização.

O que é uma atualização de pipeline?

Depois de criar um pipeline e estar pronto para executá-lo, inicie uma atualização . Uma atualização de pipeline faz o seguinte:

  • Inicia um cluster com a configuração correta.
  • Descobre todas as tabelas e exibições definidas e verifica se há erros de análise, como nomes de colunas inválidos, dependências ausentes e erros de sintaxe.
  • Cria ou atualiza tabelas e exibições com os dados mais recentes disponíveis.

Usando uma atualização de validação, pode detetar problemas no código-fonte de um pipeline sem esperar que as tabelas sejam criadas ou atualizadas. Esse recurso é útil ao desenvolver ou testar pipelines porque permite localizar e corrigir rapidamente erros no pipeline, como nomes de tabelas ou colunas incorretos.

Como as atualizações de pipeline são acionadas?

Utilize uma das seguintes opções para iniciar atualizações do pipeline:

Gatilho de atualização Detalhes
Manual Você pode disparar manualmente atualizações de pipeline a partir da interface do usuário do pipeline, da lista de pipelines ou de um bloco de anotações anexado a um pipeline. Consulte Acionar manualmente uma atualização de pipeline e Desenvolver e depurar pipelines Delta Live Tables em blocos de anotações.
Agendado Você pode agendar atualizações para pipelines usando tarefas. Consulte a tarefa de pipeline Delta Live Tables para os trabalhos.
Programático Você pode acionar atualizações programaticamente usando ferramentas, APIs e CLIs de terceiros. Consulte Executar um pipeline do Delta Live Tables em um fluxo de trabalho e API do Pipeline .

Acionar manualmente uma atualização de canalização

Use uma das seguintes opções para disparar manualmente uma atualização de pipeline:

  • Clique no botão Delta Live Tables Start Icon na página de detalhes do pipeline.
  • ** Na lista de pipelines, clique no ícone de seta para a direita na coluna Ações.

Nota

O comportamento padrão para atualizações de pipeline acionadas manualmente é atualizar todos os conjuntos de dados definidos no pipeline.

Semântica de atualização do pipeline

A tabela a seguir descreve os comportamentos para exibições materializadas e tabelas de streaming para atualização padrão e atualização completa:

Tipo de atualização Semântica da visão materializada Semântica da tabela de streaming
Atualizar (padrão) Atualiza os resultados para refletir os resultados atuais da consulta definidora. Processa novos registros através de lógica definida em tabelas e fluxos de streaming.
Atualização completa Atualiza os resultados para refletir os resultados atuais da consulta definidora. Limpa dados de tabelas de streaming, remove as informações de estado (pontos de verificação) de fluxos e reprocessa todos os registros da fonte de dados.

Por padrão, todas as exibições materializadas e tabelas de streaming em um pipeline são atualizadas a cada atualização. Opcionalmente, você pode omitir tabelas de atualizações usando os seguintes recursos:

Ambos os recursos suportam semântica de atualização padrão ou atualização completa. Opcionalmente, você pode usar a caixa de diálogo Selecionar tabelas para atualização para excluir tabelas adicionais ao executar uma atualização para tabelas com falha.

Devo usar uma atualização completa?

O Databricks recomenda executar atualizações completas somente quando necessário. Uma atualização completa sempre reprocessa todos os registros das fontes de dados especificadas por meio da lógica que define o conjunto de dados. O tempo e os recursos para concluir uma atualização completa estão correlacionados ao tamanho dos dados de origem.

As exibições materializadas retornam os mesmos resultados, independentemente de a atualização padrão ou completa ser usada. O uso de uma atualização completa com tabelas de streaming redefine todo o processamento de estado e informações de ponto de verificação e pode resultar em registros descartados se os dados de entrada não estiverem mais disponíveis.

O Databricks só recomenda a atualização completa quando as fontes de dados de entrada contêm os dados necessários para recriar o estado desejado da tabela ou exibição. Considere os seguintes cenários em que os dados de origem de entrada não estão mais disponíveis e o resultado da execução de uma atualização completa:

Fonte de dados Razão pela qual os dados de entrada estão ausentes Resultado da atualização completa
Kafka Limiar de retenção curto Os registros que não estão mais presentes na fonte Kafka são retirados da tabela de destino.
Arquivos no armazenamento de objetos Política de ciclo de vida Os arquivos de dados que não estão mais presentes no diretório de origem são descartados da tabela de destino.
Registos numa tabela Eliminado por razões de conformidade Somente os registros presentes na tabela de origem são processados.

Para evitar que atualizações completas sejam executadas em uma tabela ou exibição, defina a propriedade da tabela pipelines.reset.allowed como false. Consulte as propriedades da tabela Delta Live Tables . Você também pode usar um fluxo de acréscimo para acrescentar dados a uma tabela de streaming existente sem exigir uma atualização completa.

Iniciar uma atualização de pipeline para tabelas selecionadas

Opcionalmente, você pode reprocessar dados apenas para tabelas selecionadas em seu pipeline. Por exemplo, durante o desenvolvimento, alteras apenas uma única tabela e desejas reduzir o tempo de teste, ou uma atualização do pipeline falha e queres atualizar apenas as tabelas falhadas.

Nota

Você pode usar a atualização seletiva apenas com pipelines acionados.

Para iniciar uma atualização que atualiza apenas as tabelas selecionadas, na página detalhes do Pipeline:

  1. Clique Selecionar tabelas para atualizar. A caixa de diálogo Selecionar tabelas para atualização é exibida.

    Se não visualizar o botão Selecionar tabelas para atualização, confirme se a página de Detalhes do Pipeline exibe a atualização mais recente e se esta se encontra concluída. Se um DAG não for mostrado para a atualização mais recente, por exemplo, porque a atualização falhou, o botão Selecionar tabelas para atualização não será exibido.

  2. Para selecionar as tabelas a serem atualizadas, clique em cada tabela. As tabelas selecionadas são destacadas e rotuladas. Para remover uma tabela da atualização, clique nela novamente.

  3. Clique Atualizar seleção.

    Nota

    O botão de seleção Atualizar exibe o número de tabelas selecionadas entre parênteses.

Para reprocessar dados já ingeridos para as tabelas selecionadas, clique no Blue Down Caret ao lado do botão de seleção Atualizar e clique em seleção de Atualização Completa.

Iniciar uma atualização de pipeline para tabelas com falha

Se uma atualização de pipeline falhar devido a erros em uma ou mais tabelas no gráfico de pipeline, você poderá iniciar uma atualização apenas de tabelas com falha e quaisquer dependências downstream.

Nota

As tabelas excluídas não são atualizadas, mesmo que dependam de uma tabela com falha.

Para atualizar tabelas com falha, na página Detalhes do Pipeline, clique em Atualizar tabelas com falha.

Para atualizar apenas tabelas com falha selecionadas:

  1. Clique Botão para baixo ao lado do botão Atualizar tabelas com falha e clique em Selecionar tabelas para atualização. A caixa de diálogo Selecionar tabelas para atualização é exibida.

  2. Para selecionar as tabelas a serem atualizadas, clique em cada tabela. As tabelas selecionadas são destacadas e rotuladas. Para remover uma tabela da atualização, clique nela novamente.

  3. Clique Atualizar seleção.

    Nota

    O botão de seleção Atualizar exibe o número de tabelas selecionadas entre parênteses.

Para reprocessar os dados já ingeridos para as tabelas selecionadas, clique em Seta Azul para Baixo ao lado do botão de seleção Atualizar e clique em Atualização Completa da Seleção.

Verifique se há erros em um pipeline sem esperar pela atualização das tabelas

Importante

O recurso de atualização do Delta Live Tables Validate está em visualização pública .

Para verificar se o código-fonte de um pipeline é válido sem executar uma atualização completa, use Validar. Uma atualização Validate resolve as definições de conjuntos de dados e fluxos definidos no pipeline, mas não materializa nem publica nenhum conjunto de dados. Os erros encontrados durante a validação, como nomes de tabela ou coluna incorretos, são relatados na interface do usuário.

Para executar uma atualização Validate, clique Blue Down Caret na página de detalhes do pipeline ao lado de Iniciar e clique em Validar.

Após a conclusão da atualização Validate, o log de eventos mostra eventos relacionados apenas à atualização Validate e nenhuma métrica é exibida no DAG. Se forem encontrados erros, os detalhes estarão disponíveis no log de eventos.

Você pode ver os resultados apenas para a atualização de Validate mais recente. Se a atualização Validate foi a atualização executada mais recentemente, você poderá ver os resultados selecionando-a no histórico de atualizações. Se outra atualização for executada após a atualização Validate, os resultados não estarão mais disponíveis na interface do usuário.

Modos de desenvolvimento e produção

Você pode otimizar a execução do pipeline alternando entre os modos de desenvolvimento e produção. Use os botões Delta Live Tables Environment Toggle Icon na interface do usuário do Pipelines para alternar entre esses dois modos. Por padrão, os pipelines são executados no modo de desenvolvimento.

Quando você executa seu pipeline no modo de desenvolvimento, o sistema Delta Live Tables faz o seguinte:

  • Reutiliza um cluster para evitar a sobrecarga de reinicializações. Por padrão, os clusters são executados por duas horas quando o modo de desenvolvimento está habilitado. Você pode alterar isso na configuração pipelines.clusterShutdown.delay no Configurar o cálculo para um pipeline Delta Live Tables.
  • Desabilita novas tentativas de pipeline para que você possa detetar e corrigir erros imediatamente.

No modo de produção, o sistema Delta Live Tables faz o seguinte:

  • Reinicia o cluster para erros recuperáveis específicos, incluindo vazamentos de memória e credenciais obsoletas.
  • Repetição da execução em caso de erros específicos, como uma falha ao iniciar um cluster.

Nota

A alternância entre os modos de desenvolvimento e produção controla apenas o comportamento de execução do cluster e do pipeline. Os locais de armazenamento e os esquemas de destino no catálogo para publicação de tabelas devem ser configurados como parte das configurações de pipeline e não são afetados ao alternar entre modos.