Partilhar via


Uma tarefa Spark

Se você vir um estágio de longa duração com apenas uma tarefa, isso provavelmente é um sinal de um problema. Enquanto esta tarefa estiver a ser executada, apenas é utilizada uma CPU e o restante cluster pode estar inativo. Tal ocorre mais frequentemente nas seguintes situações:

  • UDF dispendioso em dados pequenos
  • função janela sem declaração PARTITION BY
  • Leitura a partir de um formato de ficheiro indivisível. Significa que o ficheiro não pode ser lido em várias partes, resultando numa única grande tarefa. Gzip é um exemplo de um tipo de ficheiro indivisível.
  • Definir a opção multiLine ao ler um ficheiro JSON ou CSV
  • Inferência de esquema de um arquivo grande
  • Utilização de repartition(1) ou coalesce(1)