Solucionar problemas e reparar falhas Job
Suponha que você tenha sido notificado (por exemplo, por meio de uma notificação por e-mail, soluções de monitoramento ou na IU do Databricks Jobs) de que uma tarefa falhou em uma execução do seu Databricks Job. Os passos neste artigo fornecem orientação para ajudá-lo a identificar a causa da falha, sugestões para corrigir os problemas encontrados e como reparar a falha na execução Job .
Identifique a causa da falha
Para localizar a tarefa com falha na interface do usuário de trabalhos do Databricks:
Clique Trabalhos na barra lateral.
Na coluna Nome , clique em um nome Job . A tab de execução mostra a execução ativa e a execução concluída, incluindo qualquer execução com falha. A view da matriz na tab de execução mostra uma história de execução para o Job, incluindo execuções bem e malsucedidas para cada tarefa Job . A execução de uma tarefa pode ser malsucedida porque falhou ou foi ignorada porque uma tarefa dependente falhou. Usando a view de matriz, você pode identificar rapidamente as falhas da tarefa para a execução Job .
Passe o mouse sobre uma tarefa com falha para ver os metadados associados. Esses metadados incluem as datas de início e término, status, detalhes clusters 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, exibindo a saída da tarefa, a mensagem de erro e os metadados associados.
Corrija a causa da falha
Sua tarefa pode ter falhado por vários motivos, por exemplo, um problema de qualidade de dados, uma configuração incorreta ou recursos compute insuficientes. A seguir são sugeridos os passos 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 tab. Atualize a configuração da tarefa conforme necessário e clique em Salvar tarefa.
Se o problema estiver relacionado a recursos clusters , por exemplo, instâncias insuficientes, existem várias opções:
Se seu Job estiver configurado para usar clusters Job, considere o uso de clusterscompartilhados s todo-propósito.
Altere a configuração clusters . Clique em Editar tarefa. No painel DetalhesJob , em compute, clique em Configurar para configurar os clusters. Você pode alterar o número de worker, os tipos de instância ou outras opções de configuração clusters . Você também pode clicar em swap para alternar para outros clusters disponíveis. Para garantir que você está fazendo o uso ideal dos recursos disponíveis, revise as práticas recomendadas para configuraçãoclusters .
Se necessário, peça a um administrador para aumentar as cotas de recursos na account cloud e na região onde seu workspace está implantado.
Se a falha for causada por exceder a execução simultânea máxima, ou:
Aguarde a conclusão de outra execução.
Clique em Editar tarefa. No painel DetalhesJob , clique em Editar execução simultânea, insira um novo valor para Execução simultânea máxima e clique em Confirmar.
Em alguns casos, a causa de uma falha pode estar a montante do seu Job; 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.
Falha na reexecução e tarefas ignoradas
Depois de identificar a causa da falha, você pode reparar Job multitarefa com falha ou cancelado 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 reexecudas, esse recurso reduz o tempo e os recursos necessários para se recuperar de uma execução malsucedida Job .
Você pode alterar as configurações Job ou da tarefa antes de reparar a execução Job . Tarefas malsucedidas são reexecudas com o Job atual e as configurações da tarefa. Por exemplo, se você alterar o caminho para um Notebook ou uma configuração clusters , a tarefa será reexecuda com as configurações Notebook ou clusters atualizadas.
view o histórico de todas as tarefas executadas na página de detalhes da execução da tarefa .
Observação
Se uma ou mais tarefas compartilharem clusters Job, uma execução de reparo criará novos clusters Job. Por exemplo, se a execução original usou os clusters Job
my_job_cluster
, a primeira execução de reparo usa os novos clusters Jobmy_job_cluster_v1
, permitindo que você veja facilmente os clusters e as configurações clusters usados pela execução inicial e quaisquer execuções de reparo. As configurações paramy_job_cluster_v1
são as mesmas que as configurações atuais paramy_job_cluster
.O reparo é compatível apenas com Job que orquestram duas ou mais tarefas.
O valor de duração exibido na tab Runs inclui o tempo em que a primeira execução começa até a hora em que a última execução de reparo termina. Por exemplo, se uma execução falhou duas vezes e foi bem-sucedida na terceira execução, a duração inclui o tempo das três execuções.
Para reparar um Job com falha, execute:
Clique no link para a execução com falha na coluna de horário de início da tabela de execuções Job ou clique na execução com falha na view da matriz. A página Detalhes da execuçãoJob é exibida.
Clique em Reparar execução. A caixa de diálogo Execução Job de reparo é exibida, listando todas as tarefas malsucedidas e quaisquer tarefas dependentes que serão reexecudas.
Para adicionar ou editar parâmetros para as tarefas a serem reparadas, insira os parâmetros na caixa de diálogo Execução Job de reparo . Os parâmetros inseridos na caixa de diálogo Execução Job de reparo substituem os valores existentes. Na execução do reparo subseqüente, você pode retornar um parâmetro ao seu valor original limpando a key e o valor na caixa de diálogo Execução Job de reparo .
Clique em Corrigir reparo na caixa de diálogo Executar Job de reparo .
Após a conclusão da execução de reparo, a view da matriz é atualizada com uma nova coluna para a execução reparada. Quaisquer tarefas com falha que estavam vermelhas agora devem estar verdes, indicando uma execução bem-sucedida de todo o seu Job.
Visualize e gerencie falhas contínuas Job
Quando falhas consecutivas de um Job contínuo excedem um limite, os Databricks Jobs utilizam a espera exponencial para tentar novamente o Job. Quando um Job está no estado de espera exponencial, uma mensagem no painel DetalhesJob exibe informações, incluindo:
O número de falhas consecutivas.
O período para que o Job seja executado sem erros para 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, Reset o período de repetição e iniciar uma nova execução de Job , clique em Reiniciar execução.