Windows: Apache Spark History Server Config

Quería usar el Servidor de historia de Spark para hacer uso de los mecanismos de logging de mi IU web, pero encuentro cierta dificultad para ejecutar este código en mi máquina con Windows.

He hecho lo siguiente:

Establecer mi file spark-defaults.conf para reflejar

spark.eventLog.enabled=true spark.eventLog.dir=file://C:/spark-1.6.2-bin-hadoop2.6/logs spark.history.fs.logDirectory=file://C:/spark-1.6.2-bin-hadoop2.6/logs 

Mi spark-env.sh para reflejar:

 SPARK_LOG_DIR "file://C:/spark-1.6.2-bin-hadoop2.6/logs" SPARK_HISTORY_OPTS "-Dspark.history.fs.logDirectory=file://C:/spark-1.6.2-bin-hadoop2.6/logs" 

Estoy usando Git-BASH para ejecutar el file start-history-server.sh, así:

 [email protected] MINGW64 /c/spark-1.6.2-bin-hadoop2.6/sbin $ sh start-history-server.sh 

Y obtengo este error:

 [email protected] MINGW64 /c/spark-1.6.2-bin-hadoop2.6/sbin $ sh start-history-server.sh C:\spark-1.6.2-bin-hadoop2.6/conf/spark-env.sh: line 69: SPARK_LOG_DIR: command not found C:\spark-1.6.2-bin-hadoop2.6/conf/spark-env.sh: line 70: SPARK_HISTORY_OPTS: command not found ps: unknown option -- o Try `ps --help' for more information. starting org.apache.spark.deploy.history.HistoryServer, logging to C:\spark-1.6.2-bin-hadoop2.6/logs/spark--org.apache.spark.deploy.history.HistoryServer-1-SGPF02M9ZB.out ps: unknown option -- o Try `ps --help' for more information. failed to launch org.apache.spark.deploy.history.HistoryServer: Spark Command: C:\Program Files (x86)\Java\jdk1.8.0_91\bin\java -cp C:\spark-1.6.2-bin-hadoop2.6/conf\;C:\spark-1.6.2-bin-hadoop2.6/lib/spark-assembly-1.6.2-hadoop2.6.0.jar;C:\spark-1.6.2-bin-hadoop2.6\lib\datanucleus-api-jdo-3.2.6.jar;C:\spark-1.6.2-bin-hadoop2.6\lib\datanucleus-core-3.2.10.jar;C:\spark-1.6.2-bin-hadoop2.6\lib\datanucleus-rdbms-3.2.9.jar -Xms1g -Xmx1g org.apache.spark.deploy.history.HistoryServer ======================================== full log in C:\spark-1.6.2-bin-hadoop2.6/logs/spark--org.apache.spark.deploy.history.HistoryServer-1-SGPF02M9ZB.out 

El logging completo de la salida se puede encontrar a continuación:

 Spark Command: C:\Program Files (x86)\Java\jdk1.8.0_91\bin\java -cp C:\spark-1.6.2-bin-hadoop2.6/conf\;C:\spark-1.6.2-bin-hadoop2.6/lib/spark-assembly-1.6.2-hadoop2.6.0.jar;C:\spark-1.6.2-bin-hadoop2.6\lib\datanucleus-api-jdo-3.2.6.jar;C:\spark-1.6.2-bin-hadoop2.6\lib\datanucleus-core-3.2.10.jar;C:\spark-1.6.2-bin-hadoop2.6\lib\datanucleus-rdbms-3.2.9.jar -Xms1g -Xmx1g org.apache.spark.deploy.history.HistoryServer ======================================== 

Estoy ejecutando un script sparkR donde inicializo mi context de chispa y luego llamo a init ().

¿Desea indicar si debería ejecutar el server de historial antes de ejecutar mi script de chispa?

Consejos y consejos para proceder (con respecto a la tala) serían muy apreciados.

En Windows, deberá ejecutar los files .cmd de Spark no .sh . De acuerdo con lo que vi, no hay script .cmd para el server de historial de Spark. Entonces, básicamente, debe ejecutarse manualmente.

He seguido la secuencia de commands de Linux del server de historial y para ejecutarlo manualmente en Windows deberá realizar los siguientes pasos:

  • Todas las configuraciones del server de historial deben configurarse en el file spark-defaults.conf (eliminar el sufijo .template ) como se describe a continuación.
  • Debería ir al directory de configuration de chispa y agregar las configuraciones de spark.history.* %SPARK_HOME%/conf/spark-defaults.conf . Como sigue:

    spark.eventLog.enabled true spark.history.fs.logDirectory file:///c:/logs/dir/path

  • Una vez finalizada la configuration, ejecute el siguiente command desde% SPARK_HOME%

    bin\spark-class.cmd org.apache.spark.deploy.history.HistoryServer

  • La salida debería ser algo así:

    16/07/22 18:51:23 INFO Utils: Successfully started service on port 18080. 16/07/22 18:51:23 INFO HistoryServer: Started HistoryServer at http://10.0.240.108:18080 16/07/22 18:52:09 INFO ShutdownHookManager: Shutdown hook called

Espero que ayude! 🙂

en caso de que alguien obtenga la exception floowing:

 17/05/12 20:27:50 ERROR FsHistoryProvider: Exception encountenetworking when attempting to load application log file:/C:/Spark/Logs/spark--org.apache.spark.deploy.hist ory.HistoryServer-1-Arsalan-PC.out java.lang.IllegalArgumentException: Codec [out] is not available. Consider setti ng spark.io.compression.codec=snappy at org.apache.spark.io.CompressionCodec$$anonfun$createCodec$1.apply(Com 

Simplemente vaya a SparkHome / config / spark-defaults.conf y configure spark.eventLog.compress false