Udostępnij przez


Jedno zadanie platformy Spark

Jeśli widzisz długotrwały etap z tylko jednym zadaniem, prawdopodobnie jest to oznaka problemu. Gdy jedno zadanie jest uruchomione, wykorzystywany jest tylko jeden CPU, a reszta klastra może pozostać bezczynna. Może się to zdarzyć w następujących sytuacjach:

  • Kosztowna funkcja UDF na małych danych
  • funkcja okna bez instrukcji PARTITION BY
  • Odczyt z niepodzielnego typu pliku. Oznacza to, że plik nie może być odczytywany w wielu częściach, więc kończy się to jednym dużym zadaniem. Gzip to przykład nierozdzielnego typu pliku.
  • Ustawianie opcji multiLine podczas odczytywania pliku JSON lub CSV
  • Wnioskowanie schematu dużego pliku
  • Korzystanie z repartition(1) lub coalesce(1)