Ciao Ho scritto lavoro Spark che sembra funzionare bene per quasi un'ora e dopo che l'esecutore inizia a perdersi a causa del timeout vedo il seguente nella dichiarazione di registroSpark executor perso a causa del timeout anche dopo aver impostato un valore di timeout molto lungo 1000 secondi
15/08/16 12:26:46 WARN spark.HeartbeatReceiver: Removing executor 10 with no recent heartbeats: 1051638 ms exceeds timeout 1000000 ms
io non vedo errori ma vedo sopra avvertimento e causa di esso esecutore viene rimosso da filo e vedo Rpc errore dissociato cliente e IOException
Connection refused e FetchFailedException
Dopo esecutore viene rimosso Vedo che viene nuovamente aggiunto e inizia a funzionare e un altro gli esecutori falliscono di nuovo. La mia domanda è normale che l'esecutore si perda? Cosa succede a quel compito a cui gli esecutori persi stavano lavorando? Il lavoro di My Spark continua a funzionare poiché è lungo circa 4-5 ore. Ho un cluster molto buono con una memoria da 1.2 TB e un buon numero di core CPU. Per risolvere il problema di time out di cui sopra ho cercato di aumentare il tempo da spark.akka.timeout
a 1000 secondi ma senza fortuna. Sto usando il seguente comando per eseguire il mio lavoro Spark. Per favore, sono una novità di Spark. Sto usando Spark 1.4.1. Grazie in anticipo.
./spark-submit --class com.xyz.abc.MySparkJob --conf "spark.executor.extraJavaOptions=-XX:MaxPermSize=512M" --driver-java-options -XX:MaxPermSize=512m --driver-memory 4g --master yarn-client --executor-memory 25G --executor-cores 8 --num-executors 5 --jars /path/to/spark-job.jar
Alcune domande: la domanda è completa, anche con perdite dell'esecutore? È possibile attivare il debug in 'conf/log4j.properties.conf' e verificare se si dispone di maggiori dettagli sulle perdite di executor? – Bacon
Risposta rapida per la domanda "A cosa è successo quel compito che gli esecutori persi stavano lavorando?": Spark la rilancerà (con un ID che assomiglia a: task 14.1) – Bacon
Ciao Bacon grazie per l'applicazione di risposta non completa una volta l'esecutore inizia a perdersi anche se è stato aggiunto di nuovo alla fine ha perso di nuovo e non ha mai aggiunto di nuovo e nel disco di fine rimane che non può fare nulla, quindi l'applicazione non finisce mai – u449355