Aller au contenu principal

Une tâche Spark

Si vous voyez une étape de longue durée avec une seule tâche, c'est probablement le signe d'un problème. Pendant l'exécution de cette tâche unique, un seul CPU est utilisé et le reste du cluster peut être inactif. Cela se produit le plus fréquemment dans les situations suivantes :

  • Coûteuse UDF sur de petites données
  • Fonction de fenêtre sans instruction PARTITION BY
  • Lecture à partir d'un type de fichier non fractionnable. Cela signifie que le fichier ne peut pas être lu en plusieurs parties, vous vous retrouvez donc avec une seule grande tâche. Gzip est un exemple de type de fichier non fractionnable.
  • Définition de l'option multiLine lors de la lecture d'un fichier JSON ou CSV
  • Inférence de schéma d'un fichier volumineux
  • Utilisation de repartition(1) ou coalesce(1)