apache-spark - software - zeppelin apache download
¿Por qué se cierra aleatoriamente SparkContext y cómo se reinicia desde Zeppelin? (4)
Estoy trabajando en Zeppelin escribiendo consultas spark-sql y, a veces, de repente empiezo a tener este error (después de no cambiar el código):
Cannot call methods on a stopped SparkContext.
Entonces la salida dice más abajo:
The currently active SparkContext was created at:
(No active SparkContext.)
Esto obviamente no tiene sentido. ¿Es esto un error en Zeppelin? ¿O estoy haciendo algo mal? ¿Cómo puedo reiniciar SparkContext?
Gracias
¿Podría comprobar que la memoria del controlador es suficiente o no? He resuelto este problema por
- agrandar la memoria del conductor
sintonizar GC:
--conf spark.cleaner.periodicGC.interval=60 --conf spark.cleaner.referenceTracking.blocking=false
Estoy enfrentando el mismo problema al ejecutar múltiples trabajos en PySpark . Parece que en Spark 2.0.0, con SparkSession, cuando llamo a spark.stop()
SparkSession llama al siguiente rastro:
# SparkSession
self._sc.stop()
# SparkContext.stop()
self._jsc = None
Luego, cuando intento crear un nuevo trabajo con un nuevo SparkContext, SparkSession devuelve el mismo SparkContext que antes con self.jsc = None
.
Lo resolví estableciendo SparkSession._instantiatedContext = None
después de que spark.stop()
forzó a SparkSession a crear un nuevo SparkContext la próxima vez que exijo.
No es la mejor opción, pero mientras tanto resuelve mi problema.
He enfrentado este problema un par de veces.
Si está configurando su maestro como hilo-cliente, puede deberse a la detención / reinicio de Resource Manager, el proceso del intérprete puede seguir ejecutándose, pero el Spark Context (que es una aplicación Yarn) ya no existe.
Puede verificar si Spark Context aún se está ejecutando al consultar la interfaz web del administrador de recursos y verificar si hay una aplicación llamada Zeppelin en ejecución.
A veces, reiniciar el proceso del intérprete desde dentro de Zeppelin (pestaña de intérprete -> chispa -> reiniciar) resolverá el problema.
Otras veces necesitas:
- matar el proceso de intérprete Spark desde la línea de comando
- eliminar el archivo PID de Spark Interpreter
- y la próxima vez que inicie un párrafo, comenzará un nuevo contexto de chispa
Me he dado cuenta más de este problema al ejecutar comandos pyspark
incluso con declaraciones de variables triviales que pyspark
que la ejecución de una celda se bloquea en estado de ejecución. Como mencioné anteriormente por user1314742, solo matar el PID
relevante resuelve este problema para mí.
p.ej:
ps -ef | grep zeppelin
Aquí es donde reiniciar el intérprete Spark y reiniciar el portátil zeppelin no resuelve el problema. Supongo que porque no puede controlar el PID
colgado en sí.