Une tâche Spark
Si vous voyez une phase longue avec une seule tâche, c’est probablement le signe d’un problème. Pendant que cette unique tâche s'exécute, un seul processeur est utilisé et le reste du cluster peut être inactif. Cela se produit le plus fréquemment dans les situations suivantes :
- UDF coûteuse 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, ce qui entraîne l'exécution d'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)