Perte d'instances spot
Lorsque le fournisseur de services cloud récupère des instances ponctuelles, les exécuteurs sur ces instances se terminent et toutes leurs tâches actives échouent. Spark doit réexécuter ces tâches, ce qui ralentit le job et peut entraîner des échecs de stade ou de job.
Utilisez cette page lorsque le journal des événements du compute indique que des instances ponctuelles ont été perdues ou récupérées. Si le journal des événements montre que le compute a été redimensionné en raison du dimensionnement automatique, les exécuteurs supprimés sont attendus et ne sont pas une erreur. Si le Logs des événements n’explique pas la perte des exécuteurs, consultez la rubrique Job échoués ou exécuteurs supprimés.
Réduire les pertes liées aux instances ponctuelles
Les pertes fréquentes d'instances ponctuelles peuvent signifier que le type d'instance a un taux de récupération élevé. Pour réduire les pertes, essayez les approches suivantes :
- Choisissez des types d'instance avec des taux d'interruption plus faibles. Pour voir la fréquence d'interruption de chaque type d'instance, utilisez le Conseiller d'instance Spot.
- Utilisez un type d’instance Fleet. Un type d’instance Fleet correspond au type d’instance disponible de même taille offrant la meilleure capacité et le meilleur prix pour les instances Spot.
- Arrêtez d'utiliser les instances ponctuelles. Décochez la case Utiliser une instance ponctuelle dans la configuration du compute. Voir Instances ponctuelles.
Utiliser des instances à la demande pour le driver et les charges de travail sensibles à la latence
Si le fournisseur de services cloud récupère le driver, le job échoue immédiatement. Databricks recommande l’usage d’une instance on-demand pour le nœud driver afin que le fournisseur de services cloud ne puisse pas le récupérer. Si vous utilisez un Pool d’instances ponctuelles pour les Worker, sélectionnez un Pool à la demande comme type de Driver . Voir les bonnes pratiques en matière de pool.
Un Driver à la demande ne protège pas les Worker. Lorsque le fournisseur de services cloud récupère un worker, ses exécuteurs se terminent et leurs tâches actives échouent. Le job continue, mais Spark doit réexécuter ces tâches, ce qui ralentit le job et peut entraîner des échecs de stade ou de job. Utilisez des instances ponctuelles uniquement pour les workloads qui peuvent tolérer des délais. Consultez les bonnes pratiques de configuration compute classique.