Resolver problemas e reparar falhas de tarefas
Suponha que você tenha sido notificado (por exemplo, por meio de uma notificação por email, uma solução de monitoramento ou na interface do usuário de Trabalhos do Azure Databricks) de que uma tarefa falhou em uma execução do seu trabalho do Azure Databricks. As etapas neste artigo fornecem orientação para ajudá-lo a identificar a causa da falha, sugestões para corrigir os problemas encontrados e como reparar execuções de trabalho com falha.
Identificar a causa da falha
Para localizar a tarefa com falha na IU de Tarefas do Azure Databricks:
Clique em Job Runs na barra lateral.
Na coluna Nome, clique em um nome de tarefa. O separador Execuções mostra execuções ativas e execuções concluídas, incluindo quaisquer execuções com falha. A visualização de matriz na guia Execuções mostra um histórico de execuções para o trabalho, incluindo execuções bem-sucedidas e malsucedidas para cada tarefa de trabalho. Uma execução de tarefa pode não ser bem-sucedida porque falhou ou foi ignorada porque uma tarefa dependente falhou. Utilizando a visualização de matriz, pode identificar rapidamente as falhas de tarefa para a sua execução de tarefa.
Passe o cursor sobre uma tarefa com falha para ver os metadados associados. Esses metadados incluem as datas de início e fim, estados, detalhes do cluster de duração e, em alguns casos, uma mensagem de erro.
Para ajudar a identificar a causa da falha, clique na tarefa com falha. A página Detalhes da execução da tarefa é exibida, apresentando a saída, a mensagem de erro e os metadados associados da tarefa.
Corrigir a causa da falha
A sua tarefa pode ter falhado por vários motivos, por exemplo, um problema de qualidade de dados, uma configuração incorreta ou recursos de computação insuficientes. A seguir estão as etapas sugeridas para corrigir algumas causas comuns de falhas de tarefas:
- Se a falha estiver relacionada à configuração da tarefa, clique em Editar tarefa. A configuração da tarefa é aberta em uma nova guia. Atualize a configuração da tarefa conforme necessário e clique em Salvar tarefa.
- Se o problema estiver relacionado a recursos de cluster, por exemplo, instâncias insuficientes, há várias opções:
- Se o seu trabalho estiver configurado para usar um cluster de trabalhos, considere o uso de um cluster multiuso compartilhado.
- Altere a configuração do cluster. Clique em Editar tarefa. No painel Detalhes do trabalho, em Computação, clique em Configurar para configurar o cluster. Você pode alterar o número de trabalhadores, os tipos de instância ou outras opções de configuração de cluster. Você também pode clicar em Trocar para alternar para outro cluster disponível. Para garantir que você está fazendo o melhor uso dos recursos disponíveis, revise as práticas recomendadas para configuração de cluster.
- Se necessário, peça a um administrador para aumentar as cotas de recursos na conta de nuvem e na região onde seu espaço de trabalho está implantado.
- Se a falha for causada por exceder o máximo de execuções simultâneas:
- Aguarde a conclusão de outras execuções.
- Clique em Editar tarefa. No painel Detalhes do trabalho, clique em Editar execuções simultâneas, insira um novo valor para Máximo de execuções simultâneas e clique em Confirmar.
Em alguns casos, a causa de uma falha pode estar a montante do seu trabalho; por exemplo, uma fonte de dados externa não está disponível. Você ainda pode aproveitar o recurso de execução de reparo abordado na próxima seção depois que o problema externo for resolvido.
Executar novamente tarefas com falha e ignoradas
Depois de identificar a causa da falha, você pode reparar trabalhos multitarefas com falha ou cancelados executando apenas o subconjunto de tarefas malsucedidas e quaisquer tarefas dependentes. Como as tarefas bem-sucedidas e quaisquer tarefas que dependem delas não são executadas novamente, esse recurso reduz o tempo e os recursos necessários para se recuperar de execuções de trabalho malsucedidas.
Você pode alterar as configurações de trabalho ou tarefa antes de reparar a execução do trabalho. As tarefas malsucedidas são executadas novamente com o trabalho atual e as configurações de tarefas. Por exemplo, se você alterar o caminho para uma configuração de bloco de anotações ou cluster, a tarefa será executada novamente com as configurações atualizadas do bloco de anotações ou cluster.
Exiba o histórico de todas as execuções de tarefas na página Detalhes da execução da tarefa.
Nota
- Se uma ou mais tarefas compartilharem um cluster de trabalhos, uma execução de reparo criará um novo cluster de tarefas. Por exemplo, se a execução original usou o cluster
my_job_cluster
de trabalho, a primeira execução de reparo usará o novo clustermy_job_cluster_v1
de trabalho, permitindo que você veja facilmente as configurações de cluster e cluster usadas pela execução inicial e qualquer reparo executado. As configurações paramy_job_cluster_v1
são as mesmas que as configurações atuais paramy_job_cluster
. - O reparo é suportado apenas com trabalhos que orquestram duas ou mais tarefas.
- O valor Duração exibido na guia Execuções inclui o tempo em que a primeira execução foi iniciada até o momento em que a última execução de reparo foi concluída. Por exemplo, se uma execução falhou duas vezes e foi bem-sucedida na terceira execução, a duração inclui o tempo para todas as três execuções.
Para reparar uma execução de trabalho com falha:
- Clique no link para a execução com falha na coluna Hora de início da tabela de execuções ou clique na execução com falha na visualização em matriz. A página Detalhes da execução do trabalho é exibida.
- Clique em Reparar executar. A caixa de diálogo Reparar execução do trabalho é exibida, listando todas as tarefas malsucedidas e todas as tarefas dependentes que serão executadas novamente.
- Para adicionar ou editar parâmetros para as tarefas a serem reparadas, insira os parâmetros na caixa de diálogo de execução do trabalho de reparo . Os parâmetros que introduzir na caixa de diálogo da execução da tarefa de reparação substituem os valores existentes. Em execuções de reparo subsequentes, você pode retornar um parâmetro ao seu valor original limpando a chave e o valor na caixa de diálogo Executar tarefa de reparo.
- Clique em Reparar executado na caixa de diálogo Executar tarefa de reparo.
- Após a conclusão do processo de reparação, a exibição de matriz é atualizada com uma nova coluna para o processo já reparado. Todas as tarefas com falha que estavam vermelhas agora devem estar verdes, indicando uma execução bem-sucedida para todo o seu trabalho.
Visualize e gerencie falhas contínuas de trabalho
Quando falhas consecutivas de um trabalho contínuo excedem um limite, o Azure Databricks Jobs usa backoff exponencial para repetir o trabalho. Quando um trabalho está no estado de recuo exponencial, uma mensagem no painel Detalhes do trabalho exibe informações, incluindo:
- O número de falhas consecutivas.
- O período para que o trabalho seja executado sem erro deve ser considerado bem-sucedido.
- O tempo antes da próxima tentativa se nenhuma execução estiver ativa no momento.
Para cancelar a execução ativa, redefinir o período de repetição e iniciar uma nova execução de trabalho, clique em Reiniciar execução.