Perdendo instâncias pontuais
Quando o provedor de cloud recupera instâncias de VM preemptivas, os executores dessas instâncias terminam e todas as suas tarefas ativas falham. O Spark deve executar novamente essas tarefas, o que torna o job mais lento e pode causar falhas de estágio ou de job.
Use esta página quando o log de eventos do compute mostrar que as instâncias de VM preemptivas foram perdidas ou recuperadas. Se o log de eventos mostrar que o compute foi redimensionado devido ao autoscale, os executor removidos são esperados e não são um erro. Se o log de eventos não explicar os executores perdidos, consulte Falha de jobs ou executores removidos.
Reduzir perdas de instâncias Spot
Perdas frequentes de instâncias de VM preemptivas podem significar que o tipo de instância tem uma alta taxa de recuperação. Para reduzir as perdas, tente estas abordagens:
- Escolha tipos de instância com taxas de preempção mais baixas. Mude para um tipo de instância que é preemptivo com menos frequência.
- Pare de usar VMs preemptíveis. Desmarque a caixa de seleção Usar instâncias preemptíveis em Desempenho avançado na configuração do compute. Para controlar se o compute volta para instâncias sob demanda quando as VMs preemptíveis não estão disponíveis, defina
gcp_attributes.gcp_availability. Consulte Instâncias preemptivas.
Use instâncias sob demanda para o driver e cargas de trabalho sensíveis à latência
Se o provedor de cloud recuperar o driver, o job falha imediatamente. A Databricks recomenda usar uma instância sob demanda para o nó Driver para que o provedor de cloud não possa recuperá-lo. Se você usar um pool de instâncias de VM preemptivas para os workers, selecione um pool sob demanda como Tipo de driver . Consulte Melhores práticas de pool.
Um driver sob demanda não protege os worker. Quando o provedor de cloud recupera um worker, seus executores são encerrados e suas tarefas ativas falham. O job continua, mas o Spark deve reexecutar essas tarefas, o que retarda o job e pode causar falhas de estágio ou job. Use instâncias de VM preemptivas apenas para cargas de trabalho que podem tolerar atrasos. Consulte Práticas recomendadas de configuração de compute clássica.