1
원격 Linux 서버 (IBM RHEL Z 시스템)에 Spark 2.1을 구성했습니다. SparkContext를 만들고 아래 오류를 얻으려고합니다.jupyter의 Pyspark 명령 : 원격 서버의 스파크 연결
from pyspark.context import SparkContext, SparkConf
master_url="spark://<IP>:7077"
conf = SparkConf()
conf.setMaster(master_url)
conf.setAppName("App1")
sc = SparkContext.getOrCreate(conf)
아래 오류가 나타납니다. pyspark 셸의 원격 서버에서 동일한 코드를 실행할 때 오류없이 작동합니다.
The currently active SparkContext was created at:
(No active SparkContext.)
at org.apache.spark.SparkContext.assertNotStopped(SparkContext.scala:100)
at org.apache.spark.SparkContext.getSchedulingMode(SparkContext.scala:1768)
at org.apache.spark.SparkContext.postEnvironmentUpdate(SparkContext.scala:2411)
at org.apache.spark.SparkContext.<init>(SparkContext.scala:563)
at org.apache.spark.api.java.JavaSparkContext.<init>(JavaSparkContext.scala:58)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:247)
at py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:357)
at py4j.Gateway.invoke(Gateway.java:236)
at py4j.commands.ConstructorCommand.invokeConstructor(ConstructorCommand.java:80)
at py4j.commands.ConstructorCommand.execute(ConstructorCommand.java:69)
at py4j.GatewayConnection.run(GatewayConnection.java:214)
at java.lang.Thread.run(Thread.java:748)
이 신속하고 잘못된 해결책은 'spark-submit'과 관련하여 다운 스트림에서 문제를 일으킬 수 있습니다. https://stackoverflow.com/questions/46772280/spark-submit-cant-locate-local-file/46773025#46773025. Jupyter 커널을 통해 처리하는 것이 더 좋습니다 : https://stackoverflow.com/questions/46286021/how-to-use-jupyter-sparkr-and-custom-r-install/46346658#46346658 – desertnaut