Come posso risolvere gli errori di fase nei processi Spark in Amazon EMR?

2 minuti di lettura
0

Desidero risolvere gli errori di fase nelle applicazioni Apache Spark in Amazon EMR.

Descrizione breve

In Spark, gli errori di fase si verificano quando si verifica è un problema nell'elaborazione di un'attività Spark. Questi errori possono essere causati da problemi hardware, configurazioni Spark errate o problemi di codice. Quando si verifica un errore di fase, i log del driver Spark segnalano un'eccezione simile alla seguente:

org.apache.spark.SparkException: Job aborted due to stage failure: Task XXX in stage YYY failed 4 times, most recent failure: Lost task XXX in stage YYY (TID ZZZ, ip-xxx-xx-x-xxx.compute.internal, executor NNN): ExecutorLostFailure (executor NNN exited caused by one of the running tasks) Reason: ...

Risoluzione

Ricerca del codice del motivo

Per i processi Spark inviati con il client --deploy-mode, il codice del motivo è nell'eccezione visualizzata nel terminale.

Per i processi Spark inviati con il cluster --deploy-mode, esegui il seguente comando sul nodo principale per trovare gli errori di fase nei log dell'applicazione YARN. Sostituisci application_id con l'ID dell’applicazione Spark (ad esempio, application_1572839353552_0008).

yarn logs -applicationId application_id | grep  "Job aborted due to stage failure" -A 10

Puoi anche ottenere queste informazioni da YARN ResourceManager nel container principale dell'applicazione.

Risoluzione della causa principale

Dopo aver trovato l'eccezione, utilizza uno dei seguenti articoli per risolvere la causa principale:


AWS UFFICIALE
AWS UFFICIALEAggiornata 3 anni fa