New user sign up using AWS Builder ID
New user sign up using AWS Builder ID is currently unavailable on re:Post. To sign up, please use the AWS Management Console instead.
Come posso risolvere gli errori di fase nei processi Spark in Amazon EMR?
Desidero risolvere gli errori di fase nelle applicazioni Apache Spark in Amazon EMR.
Breve descrizione
Potresti ricevere errori di fase quando un'attività Spark presenta un problema. Gli errori di fase sono 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: (example-reason)" (org.apache.spark.SparkException: processo interrotto per errore di fase: l'attività XXX nella fase YYY non è riuscita 4 volte, errore più recente: persa attività XXX nella fase YYY (TID ZZZ, ip-xxx-xx-x-xxx.compute.internal, esecutore NNN): ExecutorLostFailure (uscita dell'esecutore NNN causata da una delle attività in esecuzione) Motivo: (motivo-esempio))
Risoluzione
Individua il codice del motivo per i processi Spark che invii con il client --deploy-mode
Il codice del motivo si trova nell'eccezione mostrata sul terminale.
Se invii il processo da Amazon EMR Steps, il codice del motivo si trova nel file stderr sulla console Amazon EMR. Puoi anche ottenere i log dei passaggi stderr dalla posizione di Amazon Simple Storage Service (Amazon S3) che hai specificato per la registrazione del cluster. Ad esempio, puoi usare il percorso di file s3://example-log-bucket/example-cluster-id/steps/example-step-id/ per trovare i log.
Per individuare gli errori di fase nei log dell'applicazione YARN, esegui questo comando sul nodo principale:
yarn logs -applicationId example-application-id | grep "Job aborted due to stage failure" -A 10
Nota: sostituisci example-application-id con l'ID dell'applicazione Spark.
Puoi scaricare l'applicazione YARN dalla posizione Amazon S3 che hai specificato per la registrazione del cluster. Ad esempio, puoi usare il percorso di file s3//example-log-bucket/example-cluster-id/containers/example-application-id/. Puoi anche ottenere i log dell'applicazione YARN da YARN ResourceManager nel container principale dell'applicazione.
Risolvi la causa principale
Dopo aver individuato l'eccezione, consulta uno degli articoli di AWS Knowledge Center seguenti per risolvere il problema:
- Come posso risolvere gli errori "Container killed on request. Exit code is 137" errors in Spark on Amazon EMR?
- Come posso risolvere gli errori di fase in cui non è rimasto spazio sul dispositivo in Spark su Amazon EMR?
- Come posso risolvere gli errori ExecutorLostFailure "Slave lost" in Spark su Amazon EMR?

Contenuto pertinente
- AWS UFFICIALEAggiornata 2 anni fa
- AWS UFFICIALEAggiornata 3 anni fa
- AWS UFFICIALEAggiornata 3 anni fa
- AWS UFFICIALEAggiornata 6 mesi fa